ng-file-uploadを使用して画像をアップロードするバックエンドにリクエストするウェブサイトがあります。画像を異なるサイズに変換します& Amazon S3サーバーにアップロードします。それはウェブ上でうまく動作しています。 フロントエンド&バックエンドには、JSコードが含まれています。iOS ImageマルチノードとGraphicsMagickでNode.jsを使用してS3にアップロード
iOSアプリケーションからは、ファイルをAWS SDK for iOSにアップロードできますが、時間切れになりすぎてすべてのタイムアウトを要求しています。 (NGファイルアップロード - マルチパーティ& GraphicsMagickの)要件、
あたりのように、異なるサイズへの変換、サーバ(ノード)にをIOSのアプリケーションからのファイルのアップロードのための従来の方法を用いることにより
&次いでにアップロードアマゾンサーバー(S3)。
私たちは伝統的な方法を使ってイメージをバックエンドサーバーにアップロードしています。画像のアップロード
NSMutableURLRequest *urlRequest = [NSMutableURLRequest
requestWithURL:url
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:DEFAULT_TIMEOUT];
[urlRequest setHTTPMethod:@"POST"];
NSString *boundary = @"---------------------------14737809831464368775746641449";
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary];
[urlRequest addValue:contentType forHTTPHeaderField: @"Content-Type"];
NSMutableData *body = [NSMutableData data];
//Image
if(imageData)
{
[body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"; filename=\"%@\"\r\n", imgName, imgName] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"Content-Type: application/octet-stream\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:imageData];
[body appendData:[[NSString stringWithFormat:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
}
[body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[urlRequest setHTTPBody:body];
ため
コード我々はNode.jsのバックエンドでのマルチパーティを使用しています。さらなる処理のためにファイルオブジェクトを生成することさえできません。バックエンドにエラーが発生します。
ファイルの詳細リクエストヘッダーは、アプリケーションからのアップロード中にバックエンドで空です。
「パス」が定義されていないのようなエラーが表示されます。
私たちはバックエンドにファイルや画像を取得していないので、アップロードするだけではなく、会話のためにさらに処理することはできません。我々はこの場所で立ち往生した。
必要な操作をしてください。どんな助けもありがとう。
ありがとうございます。
スクリプトファイル名は、iOS – sandy
からの送信と同じでなければなりません。また、私たちはそれを使ってサーバー上に画像をアップロードしています。 [本文のappendData:[[NSString stringWithFormat:@ "コンテンツの処分:フォームデータ;名前= \"ユーザーファイル\ " ;ファイル名= \"%@ \ "\ r \ n"、imgName] dataUsingEncoding:NSUTF8StringEncoding]]; – sandy
@sandyありがとうございました。あなたは私の一日を救った!乾杯! –