【发布时间】:2015-11-03 15:41:57
【问题描述】:
我目前正在对 Android 应用程序进行改造。 这对我来说很新,我正在尝试找出处理简单请求而又不会弄乱的最佳方法。
我的客户端正在使用 JSON(改造的 JacksonConverter)与我的服务器通信。 所以现在,我最终做了这样的事情:
public interface MyWebService {
class RequestLogin {
public String email;
public String hash;
public RequestLogin(String email, String hash) {
this.email = email;
this.hash = hash;
}
}
@POST("/login")
Call<String> login(@Body RequestLogin body);
}
public void someFunction() {
Call<String> call = serviceInstance.login(new RequestLogin("some_mail", "some_hash"));
}
在这里你可以看到我的/login 路由采用了一个简单的 JSON:
{
"email": "some_email_here",
"hash": "some_passwd_hash_here"
}
并在正文中返回一个简单的字符串。
还不错,但我担心事情会随着时间的推移而变得一团糟。
创建对象是在使用改造的请求正文中使用 JSON 的唯一方法吗?
也许有一种方法可以代替:
@POST("/login")
Call<String> login(@MagicTag String email, @MagicTag String hash);
我可能在图书馆的 javadoc 中遗漏了它,但是当您从未使用过它时,该网站不是很清楚。如果它存在,我没有找到任何使用它的样本。
【问题讨论】:
标签: java android json retrofit