Android 改造:内容类型为 application/x-www-form-urlencoded

Android Retrofit: content type as application/x-www-form-urlencoded

android 开发相当陌生。我正在尝试使用改装来发送 post 请求。在我的改造日志中,我看到

Content-Type: text/plain; charset=utf-8

我发现请求只有在我使用以下内容类型时才有效:

application/x-www-form-urlencoded

我搜索了谷歌,但没有找到明确设置内容类型的明确方法。有人知道怎么做吗?

在您定义服务的 class 中,修改相关方法以遵循以下模式:

@FormUrlEncoded
@POST/GET/PUT/DELETE("/your_endpoint")
Object yourMethodName(@Field("your_field") String yourField,...);

改造 2 有点不同:

@FormUrlEncoded
@POST/GET/PUT/DELETE("/your_endpoint")
Call<Task> createTask (@Field("your_field") String title); 

您必须像这样添加请求 header :

@Headers("Content-Type: application/x-www-form-urlencoded")

在有方法声明的接口中。