通过@Field 进行改造发布使值成为数组
Retrofit posting through @Field makes value as an array
使用 Django web API 连接移动客户端,我使用 Retrofit @Field 将值 post 设置为 API,当我使用 post 测试时它完美运行伙计,但在移动客户端中使用 Retrofit POST posting 参数做了同样的事情
@Field
@FormUrlEncoded
@POST(Urls.API_REGISTER)
fun register(
@Header("Content-Type") contentType: String,
@Field("username") userName: String,
@Field("password") password: String,
@Field("email") email: String
): Observable<JsonElement>
并将参数值作为数组元素获取,如下所示
{'username': ['kabildev'], 'password': ['Kabil@123'], 'email': ['kapil@outlook.com']}
即使我曾尝试将 Content-Type 设置为 application/json 但没有成功,当 post 来自 post 时,是否有任何理由形成数组值,仅供参考男人需要如下
{'username': 'kabildev', 'password': 'Kabil@123', 'email': 'kapil@outlook.com'}
我遇到了类似的问题,当 @Field 被 @Body 替换时得到了纠正创建新数据 class命名为 User 并发出如下请求
@POST(Urls.API_REGISTER)
fun register(
@Body user: User
): Observable<JsonElement>
另外别忘了去掉@FormUrlEncoded,让User模型如下
data class User(@SerializedName("username") val userName: String,
@SerializedName("password") val password: String,
@SerializedName("email") val email: String)
使用 Django web API 连接移动客户端,我使用 Retrofit @Field 将值 post 设置为 API,当我使用 post 测试时它完美运行伙计,但在移动客户端中使用 Retrofit POST posting 参数做了同样的事情 @Field
@FormUrlEncoded
@POST(Urls.API_REGISTER)
fun register(
@Header("Content-Type") contentType: String,
@Field("username") userName: String,
@Field("password") password: String,
@Field("email") email: String
): Observable<JsonElement>
并将参数值作为数组元素获取,如下所示
{'username': ['kabildev'], 'password': ['Kabil@123'], 'email': ['kapil@outlook.com']}
即使我曾尝试将 Content-Type 设置为 application/json 但没有成功,当 post 来自 post 时,是否有任何理由形成数组值,仅供参考男人需要如下
{'username': 'kabildev', 'password': 'Kabil@123', 'email': 'kapil@outlook.com'}
我遇到了类似的问题,当 @Field 被 @Body 替换时得到了纠正创建新数据 class命名为 User 并发出如下请求
@POST(Urls.API_REGISTER)
fun register(
@Body user: User
): Observable<JsonElement>
另外别忘了去掉@FormUrlEncoded,让User模型如下
data class User(@SerializedName("username") val userName: String,
@SerializedName("password") val password: String,
@SerializedName("email") val email: String)