Ich bin mir immer noch nicht sicher, was passiert ist, aber ich habe das Problem gelöst. Hier ist, was ich tat:
- (void)request:(FBRequest*)request didFailWithError:(NSError*)error {
if ([error code] == 1 && [[request method] isEqualToString:@"photos.upload"]) {
FBRequest *tryAgain = [FBRequest requestWithDelegate:self];
[tryAgain call:[request method] params:[request params] dataParam:(NSData *)[request dataParam]];
}
}
Im Wesentlichen habe ich es einfach noch einmal versucht. Das erneute Senden der gleichen Anfrage funktionierte nicht (schlug mit einer ungültigen Signatur fehl), also erstellte ich eine neue Anfrage mit den Eigenschaften der alten Anfrage.
Das Schöne daran ist, dass es sich um eine Art Rekursion handelt: Wenn die neue Anfrage ebenfalls fehlschlägt, wird sie einfach weiter versucht. Ich hoffe allerdings, dass dies keine negativen Nebenwirkungen hat.