java–Retrofit:500内部服务器错误

java–Retrofit:500内部服务器错误,第1张

概述每当我尝试通过Retrofit发送POST请求时,我有500个内部服务器错误.当我发送GET请求时,它正确发送.我确信在服务器端,每一件事都可以.我的代码出了什么问题?StringENDPOINT="http://52.88.40.210";//modelforrequestFriendModelff=newFriendModel();

每当我尝试通过Retrofit发送POST请求时,我有500个内部服务器错误.当我发送GET请求时,它正确发送.我确信在服务器端,每一件事都可以.我的代码出了什么问题?

    String ENDPOINT = "http://52.88.40.210";    //model for request        FrIEndModel ff = new FrIEndModel();        ff.setFrIEndNumber("380935275259");        ff.setID(516);        ff.setNumber("380936831127");        RestAdapter adapter = new RestAdapter.Builder()                .setEndpoint(ENDPOINT)                .build();        WayfAPI API = adapter.create(WayfAPI.class);        API.getFrIEndsLocation(ff, new Callback<List<FrIEndLocationModel>>() {            @OverrIDe            public voID success(List<FrIEndLocationModel> frIEndLocationModels, Response response) {                for (FrIEndLocationModel ff : frIEndLocationModels) {                    Log.d("myLogs", "===========Successful==========");                    Log.d("myLogs", "ID: " + ff.getID());                    Log.d("myLogs", "Number: " + ff.getNumber());                    Log.d("myLogs", "Geolocation: : " + ff.getGeolocation());                }            }            @OverrIDe            public voID failure(RetrofitError error) {                Log.d("myLogs", "-------ERROR-------");                Log.d("myLogs", Log.getStackTraceString(error));            }        });    }

请求声明:

@headers({        "Accept: application/Json",        "Content-type: application/Json"})@POST("/API/geo/getLoc")public voID getFrIEndsLocation(@Body FrIEndModel frIEndModel, Callback<List<FrIEndLocationModel>> response);

邮递员的请求和回复的例子:


解决方法:

似乎在postman中你发送了一个FrIEndModel数组,但在你的代码中你发送的是一个对象.

只需更改您要发送的对象,而不是发送单个对象,发送服务器所需的List

    List<FrIEndModel> frIEndsList = new ArrayList<FrIEndModel>();    FrIEndModel ff = new FrIEndModel();    ff.setFrIEndNumber("380935275259");    ff.setID(516);    ff.setNumber("380936831127");    frIEndsList.add(ff);

您还应该更改此签名:

public voID getFrIEndsLocation(@Body FrIEndModel frIEndModel, Callback<List<FrIEndLocationModel>> response);

public voID getFrIEndsLocation(@Body List<FrIEndModel> frIEndModel, Callback<List<FrIEndLocationModel>> response);
总结

以上是内存溢出为你收集整理的java – Retrofit:500内部服务器错误全部内容,希望文章能够帮你解决java – Retrofit:500内部服务器错误所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1096594.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存