1
Retrofit 2.1を使用していて、サーバにオブジェクトを投稿しているときにステータスコード= 500で内部サーバにエラーが発生しましたが、バックエンドから投稿しようとしました。魅力のように、私はこれがサーバーの問題ではないと確信しています。Retrofit 2.1内部サーバのエラー
確かに、私はシングルトンとして改修を使用する必要があります。私はここに投稿
//return api if not null
HereApi getApi(){
if (api == null) {
api = getRetrofit().create(HereApi.class);
}
return api;
}
//returns restadapter if not null
Retrofit getRetrofit(){
if (retrofit == null) {
retrofit = new Retrofit.Builder()
.baseUrl("my endpoint")
.addConverterFactory(GsonConverterFactory.create())
.build();
}
return retrofit;
}
と、このメソッドは、オブジェクト:
void createHere(Here here){
List<Here> list = new ArrayList<>();
list.add(here);
Call<List<Here>> call = getApi().createHere(list);
call.enqueue(new Callback<List<Here>>() {
@Override
public void onResponse(Call<List<Here>> call, Response<List<Here>> response) {
Log.i(TAG, "onResponse: "+response.message());
}
@Override
public void onFailure(Call<List<Here>> call, Throwable t) {
}
});
}
私は内部の単一のオブジェクトのリストを投稿すると、投稿してみました1つのオブジェクトだけですが、ステータスコードは500です*(
これは私のAPIサービスインターフェイスです:
public interface HereApi{
@GET("/lessons/")
Call<List<Lesson>> getLesson(@QueryMap Map<String,String> map);
@Headers({
"Content-Type: application/json",
"Vary: Accept"
})
@POST("/heres/")
Call<List<Here>> createHere(@Body List<Here> list);
@GET("/heres/")
Call<List<Here>> getHeres(@QueryMap Map<String,String> map);
}
私はジャンゴ+ Djangoの休止フレームワークでバックエンドを書かれている:
私はこれから投稿しようとすると、それだけで動作します:
私はあなたの助けが必要です、私はこのプロジェクトを完了するために1日しかありません!
ありがとうございます!あなたは私の命を救いました! (͡°͜ʖ͡°) –