2016-04-06 30 views
1

retrofit2を使用して、アプリでいくつかのREST APIコールを作成しています。しかし、/profile/:idのようなエンドポイントを持ついくつかのAPIがあります。つまり、エンドポイントにコロンが含まれています。実行時に:idを提供してapi呼び出しを行う必要があります。これは、例えばURLのためのパスを含むurlに似ているようです。 /profile/{id}、そのドキュメントは公式ページRetrofitにあります。しかし、私は結腸を含むURLのための何かを見つけることができません。ですから、改造の際にこれを行うことができますか?あなたがここに来た場合は、あなたのurlパラメータが含まれているためコロンを含むURLにパラメータを指定する方法

+2

URLにコロンが含まれていないと思います。 URLの* documentation *にはコロンが含まれています。 AFAIK、コロンは有効なパス文字ではありません。 '/ profile /:id'は'/profile/{id} 'と同じことを文書化する別の方法です。つまり、実行時に2番目のパスセグメントが適切な値に置き換えられます。 – CommonsWare

+0

'@ Path'を使って試してみましょう。 – Harry

+0

あなたの提案はうまくいった。ありがとう! – Harry

答えて

0

ここでは、改造に

@GET("profile/{id}) 
Call<UserProfile> getProfile(@Path("id") int userId); 

をエンドポイントのようなもののための使用例を見つけることができますが、それは

1

ニーズをカバーしていホープ「:」または " (スキル」のような自体に

":(アンドロイドアプリ開発)"

https://www.upwork.com/ab/feed/jobs/atom?&q=skills:(android-app-development)&sequrityToken="blablabla"

改造でdynamic linksを使用してみてください:

通常要求ストリングため等のparams有する: "(" または ""

@Query("&q") String q4, 
@Query("&securityToken") String q5, 

これにより破壊されます。

+0

これはトリックでした。ありがとうございました! – theshadowchild

関連する問題