2012-02-16 2 views
0

同期要求を使用して、イメージをサーバーにヘキサ文字列として送信しています。私は解像度200x150の画像のヘキサ文字列を送信すると、サーバーにヒットすることはできませんが、私は100x75のような低い解像度で同じ画像を送信する場合、サーバーから応答を得ることができます。sendSynchronousメソッドでサーバーにヒットできません

NSMutableString *urlString = [NSMutableString stringWithString:@"http://xxxxxx:8080/GeoLocationSave/ReceiveImage"]; 
UIImage *sample = [UIImage imageNamed:@"[email protected]"]; 
NSData *imgData = UIImagePNGRepresentation(sample); 
[urlString appendString:@"?image="]; 
[urlString appendString:hexImage]; 
NSError *error; 
error=nil; 
NSURLResponse *response; 
response=nil; 
NSURL *url = [NSURL URLWithString:urlString]; 
NSData *urlData = [NSURLConnection sendSynchronousRequest:[NSURLRequest requestWithURL:url] returningResponse:&response error:&error]; 

高解像度画像の場合、urlDataの長さは0です。両方のイメージのimageDataのログ値は完全です。私は、より高い解像度の画像のためにサーバーにエントリーポイントのログが表示されません。

答えて

0

こんにちは、私は何か間違いを発見しました。 HTTP Getメソッドで8000バイトのデータをプッシュするのはあまりにもばかげていました。 URLの長さが8000バイトを超えると、サーバーにヒットしないことに注意しました。だから私はちょうど8000バイトの長さを超えて取得することができます)カメラを介して撮影された画像がサーバーに送信されるサーバーに送信されるようにHTTP POSTメソッドに移動しました。

0
NSData *urlData = [NSURLConnection sendSynchronousRequest:[NSURLRequest requestWithURL:urlString] 
             returningResponse:&response 
                error:&error]; 

NSString *result = [[NSString alloc] initWithData:urlData 
             encoding:NSUTF8StringEncoding]; 
NSLog(@"return: %@" , result); // to see the response 

あなたは[NSURLRequest requestWithURL:url]とここにURLを使用していますが、urlStringを使用している以上。 URLをどこに設定しますか?

関連する問題