android - 如何在android中的Retrofit 2的 'Body'参数中传递字符串

标签 android json post retrofit2

@POST("api/login")
Call<ApiResponse> loginUser(@Body String user);

这里的字符串实际上是一个 JSONstring 即

{"email":"test@gmail.com","password":"test"}

无法弄清楚这里有什么问题。它再次将字符串转换为 json。请建议..

这就是我想要对我的请求执行的操作,如图所示。

enter image description here

最佳答案

在对象中转换你的数据

public class Credentials
{
    public String email;
    public String password;
}

将数据设置为对象

Credentials loginCredentials = new Credentials();
loginCredentials.email = "test@gmail.com";
loginCredentials.password = "password";

调用你的 api

@POST("api/login")
Call<ApiResponse> loginUser(@Body Credentials credentials);

关于android - 如何在android中的Retrofit 2的 'Body'参数中传递字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35082844/

相关文章:

java - 如何让RecyclerView在不滚动的情况下查看某个位置?

asp.net-mvc - ASP.net MVC - 带有 DateTime 的模型,试图为 jqGrid 的 Json() 序列化

json - 如何使用命令行计算 JSON 对象中的项目?

json - 使用jq将带有换行符的文本文件转换为json

azure - ASP.NET Core Web API HTTP POST 在 Azure 中返回 404

jquery - 在actionscript中,是否有类似jQuery的ajax函数$.post()的函数?

java - 如何在一个套接字上发送各种信息?

javascript - 将类的 div 调整为最大

android - 使用jetpack compose时android studio gradle脚本中compileSdk和compileSdkVersion有什么区别

java - AsyncTask,多种不同的操作