画像をベース64とNSData
に変換して、UIImage
を.Netサーバーにアップロードしようとしています。しかし、私は応答をnullにしています。ここに私のコードです。POSTメソッドを使用して.netサーバーに画像をアップロード
NSString *base64Encoded = [imageData base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithLineFeed];
NSString *post= [NSString stringWithFormat:@"myServerSideUrl?Image=%@",base64Encoded];
NSLog(@"PostData: %@",post);
NSString* webStringURL = [post stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLFragmentAllowedCharacterSet]];
NSURL* url = [NSURL URLWithString:webStringURL];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%lu", (unsigned long)[postData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];
NSError *error;
NSHTTPURLResponse *response = nil;
NSData *urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSData *responseData = [[NSData alloc]initWithData:urlData];
if ([response statusCode] >=200)
{
NSDictionary *jsonData = [NSJSONSerialization JSONObjectWithData: responseData options:0 error:nil];
NSLog(@"%@",jsonData);
}
いくつかの時間後、私は、URLが長すぎるHttpResponseCodeのように示す郵便配達でチェック:414。また、私はNSData
形式の画像をAFNetworkを使って送信しようとしましたが、同じ応答が得られました。そして、私はちょうどこれについて語りました、体の中にベース64の文字列を送るように言ってください。本文に画像を送信しようとすると、サーバー側で画像を取得できません。彼らはGETメソッドのようなAPIを作成していますが、実際のメソッドはPOSTです。これについて他に解決策がありますか?助言がありますか。
解決策は見つかりましたか? –
まだありません。バックエンド側を変更しようとしています。 – Naveen
郵便配達員からフォームのURL応答(Get)を投稿できますか? –