iPhone アプリの URL でキリル文字をパラメーターとして渡す必要があります。サンプル URL は次のようになります。
http://www.mysite.com/script.php?message =страшная
この URL をブラウザで使用すると、正しい結果が返されます。しかし、私のアプリでは、キリル文字は好まれず、didFailWithErrorコードで「悪い URL」を取得してしまいます。
これを回避するためにブラウザでいくつかのエンコーディングを試しましたが、うまくいきませんでした。上記の正確な URL の例を iPhone アプリ経由で実際に送信する方法はありますか? 私が使用しているコードのスニペットは次のとおりです。
selectedWord = @"страшная";
NSString *requestURL = [NSString stringWithFormat:@"http://www.mysite.com/script.php?message=%@", selectedWord];
NSLog (requestURL);
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:requestURL]];
[[NSURLConnection alloc] initWithRequest:request delegate:self];
上記のコードでは、デバッグ目的でNSString *selectedWordにキリル文字をハードコーディングしました。実際のアプリケーションでは、ユーザー入力に基づいて動的になります。
キリル文字をテキストではなくデータとして渡すことができると考えて、より複雑なPOSTを試しましたが、間違っているか、機能しません。
ブラウザで試してからアプリに実装できるエンコーディングに関する例は役に立ちます。NSURLでキリル文字が拒否されていることに気付きましたが、別のコードまたはエンコーディングでそれを回避する方法があることを望んでいました。