Android 尝试使用改装发布时响应不成功
我正试图将数据发布到使用改型,但我没有得到成功的响应 json请求的示例:-Android 尝试使用改装发布时响应不成功,android,json,web-services,retrofit,Android,Json,Web Services,Retrofit,我正试图将数据发布到使用改型,但我没有得到成功的响应 json请求的示例:- {"params": {"password": "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92", "email": "jkowalski@test.pl"}, "method": "login", "id": "12345", "jsonrpc": "2.0"} 成功响应的示例:- {'jsonrpc': '2.0', '
{"params": {"password":
"8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92", "email":
"jkowalski@test.pl"}, "method": "login", "id": "12345", "jsonrpc": "2.0"}
成功响应的示例:-
{'jsonrpc': '2.0', 'id': '12345', 'result': {'roles': [0], 'token':
'VDKlZYXucIWdhvnbgFEPitkN', 'uid': 1}}
用户模型:-
public class User {
private Params params;
private String method;
private String id;
private String jsonrpc;
public Params getParams() {
return params;
}
public void setParams(Params params) {
this.params = params;
}
public String getMethod() {
return method;
}
public void setMethod(String method) {
this.method = method;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getJsonrpc() {
return jsonrpc;
}
public void setJsonrpc(String jsonrpc) {
this.jsonrpc = jsonrpc;
}
}
参数模型:
public class Params {
private String password;
private String email;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
服务:
public interface UserClient {
@POST("user")
Call<User> login(@Body User user);
}
然而,当我检查响应是否成功时,我得到的是错误的
private void sendNetworkRequest(User user){
Retrofit.Builder builder = new Retrofit.Builder()
.baseUrl("http://biokod.net:8990/api/users/")
.addConverterFactory(GsonConverterFactory.create());
Retrofit retrofit = builder.build();
UserClient client = retrofit.create(UserClient.class);
Call<User> call = client.login(user);
call.enqueue(new Callback<User>() {
@Override
public void onResponse(Call<User> call, Response<User> response) {
if(response.isSuccessful())
Log.d("testtest", response.body().toString());
else
Log.d("testtest", "fail");
}
@Override
public void onFailure(Call<User> call, Throwable t) {
}
});
}
private void sendNetworkRequest(用户){
reformation.Builder=新的reformation.Builder()
.baseUrl(“http://biokod.net:8990/api/users/")
.addConverterFactory(GsonConverterFactory.create());
改装改装=builder.build();
UserClient=reformation.create(UserClient.class);
Call=client.login(用户);
call.enqueue(新回调(){
@凌驾
公共void onResponse(调用、响应){
if(response.issusccessful())
Log.d(“testtest”,response.body().toString());
其他的
Log.d(“测试”、“失败”);
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
}
});
}
无法找出我做错了什么,感谢任何帮助。感谢Satan Pandeya的评论,我发现我的端点和url错误,正确的url应该是biokod.net:8990/api和端点用户。感谢您的帮助。感谢Satan Pandeya的评论,我发现我的端点和url错误,正确的url应该是biokod.net:8990/api和端点用户。谢谢您的帮助。您在logcat>您的基本url:中是否遇到任何错误,并且您将该端点用作:user。你的url是否正确?检查你的url和键我在logcat中没有发现任何错误,当我将url更改为biokod.net:8990/api/并将@POST(“user”)替换为@POST(“users”)时,我得到了成功的响应,但是response.body.toString()返回com.witanowski.biokod.data.model。User@9057d22而不是使用正确的jsontry来覆盖用户模型中的toString方法。在logcat>您的基本url:中是否出现任何错误,并将该端点用作:User。你的url是否正确?检查你的url和键我在logcat中没有发现任何错误,当我将url更改为biokod.net:8990/api/并将@POST(“user”)替换为@POST(“users”)时,我得到了成功的响应,但是response.body.toString()返回com.witanowski.biokod.data.model。User@9057d22而不是正确的jsontry来覆盖用户模型中的toString方法。
private void sendNetworkRequest(User user){
Retrofit.Builder builder = new Retrofit.Builder()
.baseUrl("http://biokod.net:8990/api/users/")
.addConverterFactory(GsonConverterFactory.create());
Retrofit retrofit = builder.build();
UserClient client = retrofit.create(UserClient.class);
Call<User> call = client.login(user);
call.enqueue(new Callback<User>() {
@Override
public void onResponse(Call<User> call, Response<User> response) {
if(response.isSuccessful())
Log.d("testtest", response.body().toString());
else
Log.d("testtest", "fail");
}
@Override
public void onFailure(Call<User> call, Throwable t) {
}
});
}