リモートサーバーにURLを送信するためのコードがあります。URLをエンコードしない場合は、完全に機能します。しかし、URLをエンコードすると、機能しません。したがって、URLクエリ文字列をエンコードする方法に問題があると確信しています。
これが私のコードです:
// URL TO BE SUBMITTED.
NSString *urlString =
@"http://www.mydomain.com/test.php?";
// NOW CREATE URL QUERY STRING
NSString *unencoded_query_string =
@"name=%@&user_id=%@&person_name=%@&person_email=%@&privacy=%@";
// PUT PREVIOUSLY SET VALUES INTO THE QUERY STRING
NSString *unencoded_url_with_params =
[NSString stringWithFormat:unencoded_query_string, business , user_id , name , email , privacy_string];
// ENCODE THE QUERY STRING
NSString *escapedString = (__bridge_transfer NSString *)CFURLCreateStringByAddingPercentEscapes(
NULL,
(__bridge CFStringRef)unencoded_url_with_params,
NULL,
(CFStringRef)@"!*'();:@&=+$,/?%#[]",
kCFStringEncodingUTF8);
// NOW APPEND URL TO QUERY STRING
NSString *full_encoded_url_string =
[urlString stringByAppendingString: escapedString];
次に、この文字列をサーバーに送信すると、サーバーで正しい要求ファイルが呼び出されますが、パラメーターを読み取ることができません。
私がここで間違っていることを誰かが知っていますか?ちなみにアークを使っています。
ありがとう!