[英]How to add post query parameter string with double quote in url in retrofit?
[英]how to put query string in Retrofit 2
嗨,我需要在 android 中的 Retrofit 2 中实现此 CURL 代码:
curl_setopt($ch, CURLOPT_POSTFIELDS, "username=myname&password=mypass");
我像这样使用了改造:
Call<ResponseBody> login(@Query("username") String username, @Query("password") String password);
但目标 API 只接受 post 数据是像"username=myname&password=mypass"
这样的字符串,而不是不同的参数。 如何使用 Retrofit 2 实现上面的 CURL 代码?
使用 @Field 而不是 @query 并在 Call 方法的开头添加 @FormUrlEncoded
可能可以帮助有同样问题的人。
使用@QueryName
可以放置查询字符串。
Call<ResponseBody> login(@QueryName String queryString);
也许需要替换一些字符并添加Interceptor
。
参考: https : //github.com/square/retrofit/issues/1199#issuecomment-307176224
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.