0
AFNetworking Imageのアップロードで本当に奇妙な問題があります。ファイルが正常にアップロードされ、自分のサーバーにアップロードされていることがわかります。ファイルをダウンロードしてMacで開くと、画像は正常に表示されます。AFNetworkingでアップロードした後に画像がブラウザに表示されない
ただし、同じ画像はブラウザに表示されません。それは何らかの形でファイルが壊れていて、ブラウザでしか動かないということです。
ここにはlinkの画像があります。任意のブラウザで開くと、空白の画面が表示されます。
これは何が起こっているのですか?私は今日それを把握するために何時間も費やしたが役に立たない。 PDFをアップロードしようとしましたが、うまくいきました。ここで
は私のコードです:
NSDictionary *params = @{@"deliverable_ID" : deliverableID,
@"name" : @"Artboard.png",
@"type" : @"png",
@"description" : @"Some random png file"};
NSString *path = [[NSBundle mainBundle] pathForResource:@"Artboard" ofType:@"png"];
NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] multipartFormRequestWithMethod:@"POST" URLString:url parameters:params constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
[formData appendPartWithFileURL:[NSURL fileURLWithPath:path] name:@"file" fileName:@"Artboard.png" mimeType:@"image/png" error:nil];
} error:nil];
[request setValue:apiToken forHTTPHeaderField:@"Authorization"];
AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];
NSURLSessionUploadTask *uploadTask = [manager
uploadTaskWithStreamedRequest:request
progress:nil
completionHandler:^(NSURLResponse * _Nonnull response, id _Nullable responseObject, NSError * _Nullable error) {
if (error) {
NSString * result = [NSString stringWithFormat:@"Error: %@", error];
[delegate printResult:result];
} else {
NSString * result = [NSString stringWithFormat:@"%@", responseObject];
[delegate printResult:result];
}
}];
[uploadTask resume];
お返事ありがとうございます。私はそれが問題だとは思わない...この画像:https://ashore-testing.s3.amazonaws.com/uploaded/deliverable97/version1/Artboard.pngにはオクテットストリームのコンテンツタイプもあるが、ブラウザーを起動します。しかし、私がカールしようとすると奇妙です - 元の途切れることのないイメージの内容の長さは7838ですが、壊れたものは4629です。 –
Obj-CのAFNetworkingコードに問題があるようです。私はPHP(multipart/formdata)を使用してアップロードしようとしましたが、イメージはそのように壊れません –