1
因此,我試圖使用AFNetworking將POST文件上傳到服務器。
因此,從他們的網站使用示例代碼我有這個設置。當它運行時,東西被上傳到服務器(或者至少它離開我的電腦)。我可以監視上傳,當上傳完成時,服務器會識別它已完成並加載文件,但會加載舊的XML。所以它正確地連接到服務器,但我不知道爲什麼文件上傳無法正常工作。此外,我只是想發送文件,服務器不需要任何標題或參數等
所以我想知道如果我已經存儲了正確的數據?或者,如果我沒有正確地發送服務器或者什麼?任何建議將有幫助使用AFNetworking上傳POST文件
NSData *iTunesXMLData = [NSData dataWithContentsOfFile:filePath];
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];
/* NSMutableURLRequest *request =[httpClientmultipartFormRequestWithMethod:@"POST"
path:@"/upload.php?id=5" parameters:nil constructingBodyWithBlock: ^(id <AFMultipartFormData>formData) {
[formData appendPartWithFileData:iTunesXMLData name:@"iTunes Music Library" fileName:@"iTunes Music Library.xml" mimeType:@"application/xml"];
}];*/
//I tried this way also, both did the same thing
NSMutableURLRequest *request = [httpClient multipartFormRequestWithMethod:@"POST" path:@"/upload.php?id=5" parameters:nil constructingBodyWithBlock: ^(id <AFMultipartFormData>formData) {
[formData appendPartWithFormData:iTunesXMLData name:@"iTunes Music Library"];
}];`
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];`
NSLog(@"Operation: %@", operation);
[operation setUploadProgressBlock:^(NSUInteger bytesWritten, long long totalBytesWritten, long long totalBytesExpectedToWrite) {
NSLog(@"Sent %lld of %lld bytes", totalBytesWritten, totalBytesExpectedToWrite);
}];
[operation start];
感謝您的建議,我確實添加了一段時間,它確實幫助我診斷問題。 PHP服務器需要具有特定文件名的文件。 – urbanrider