NSURLRequest nicht in den Griff HTTP-body, wenn die Methode nicht VERÖFFENTLICHEN?
Immer, wenn ich einen Körper auf eine veränderliche Anfrage mit der Methode " etwas anderes als die POST, der Körper ist nicht in der Anforderung enthalten sind, und ich bekomme ein kCFErrorDomainCFNetwork Fehler 303 (kCFErrorHTTPParseFailure), wenn der server antwortet. Ändern der Methode POST ist alles was es braucht für den Wunsch zu gehen durch ohne Fehler. Gibt es eine Möglichkeit zum befestigen eines Körpers zu anderen Methoden, oder bleiben wir mit der POST für alles?
Dies ist die Vorlage code:
NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:assembleURL]];//cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData timeoutInterval:45.0];
#if (SERVER_TARGET_ARGS_ALLOWED==1)
[req setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[req setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[req setHTTPMethod:ServerMessageMethods[operation]]; //value is @"POST" or other method name
#endif
//run the payload into a JSON
SBJsonWriter *json = [[SBJsonWriter alloc] init];
NSString *encodedPayload = [json stringWithObject:payload];
encodedPayload = [NSString stringWithFormat:@"%@", [encodedPayload stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSData *dataPayload = [encodedPayload dataUsingEncoding:NSUTF8StringEncoding];
[req setHTTPBody:dataPayload];
NSURLConnection *conn = [NSURLConnection connectionWithRequest:req delegate:self];
Yep, hatte ich ein Problem mit Content-Length, in Bezug auf PDFs, aber dachte, ich würde Aktie. ssbits.wordpress.com/tag/kcferrordomaincfnetwork
InformationsquelleAutor Mark | 2010-08-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe versucht, finden weitere aktuelle Informationen über es, aber es war ein Alter post über den genauen Punkt, den Sie sprechen: http://lists.apple.com/archives/cocoa-dev/2004/May/msg01847.html
Im Grunde, Sie erwähnen es ist ein Fehler im code. Leider, ich wünschte, ich finden konnte, etwas neueres, das bestätigt es.
Den code, den ich benutzt habe ist ASIHTTPRequest und kann es auf jeden Fall tun, STELLEN Anfragen, da Sie eine niedrigere Ebene einstellen des Codes zum erstellen der HTTP-Nachrichten und verlassen sich nicht auf die
NSMutableUrlRequest
.Auch, ich fand einen anderen blog-post über das Thema zu reden und das, was Sie brauchen, um für eine PUT-Anfrage. http://iphonedevelopment.blogspot.com/2008/06/http-put-and-nsmutableurlrequest.html
blog post:
Noch existiert in 2016
InformationsquelleAutor christophercotton
Sind Sie, sich zu erinnern, setzen die
Content-Length
/Transfer-Encoding
undContent-Type
Header? Ich glaube nicht, dassContent-Length
wird in automatisch für Sie, was bedeutet, dass der server soll davon ausgehen, es ist 0.Mehr info: http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html
es kann automatisch eingestellt werden, aber ich weiß es nicht; jedoch eine Undefinierte
Content-Length
könnte erklären, warum der server nie liest, der Körper der Anfrage.Content-Length ist nicht erforderlich, wenn Sie die Verwendung von HTTP/1.1 ist der chunked-encoding. NSURLConnection behandeln soll alles transparent für Sie.
InformationsquelleAutor Dave DeLong
hier ist es
}
InformationsquelleAutor Dima