2016-04-10 44 views
1

Retrofit 1.9を使用していて、Yahoo APIからデータを取得しようとしています。 REST QueryリンクにはすべてのスペースがASCII値に変換されているので、 String query = "select%20*%20from" のような文字列を作成し、クエリパラメータとして渡しました。Retrofitを使用したクエリパラメータのエスケープシーケンス

しかし、リクエストが送信されると、リンクの%が再び対応するASCII値%25に変換され、リクエストURLがselect%2520*%2520fromに変更されたことがわかりました。

%文字列自体をString query = "select\%20*%20from"としてエスケープしようとしましたが、「文字列リテラルに不正なエスケープ文字があります」と表示されます。

これを解決するための関連リソースが見つかりませんでした。これが正しいアプローチであるかどうかはわかりません。この問題と適切なアプローチに解決策を教えてください(これ以外のものがあれば)。

答えて

0

この質問をご覧ください。 Is a URL allowed to contain a space?。 基本的にスペースを+記号でエンコードしてみてください。

+0

役に立たなかった+は%2Bにエンコードされています。 –

関連する問題