0
我正在呼籲這樣的服務器:改造400錯誤
public void startModelFor(final AnotherModel anotherModel) {
if (selectedConsumer == null) {
getView().showNoConsumerError();
} else {
getView().setLoading();
mApi.createModel(mManager.load(), selectedConsumer, ORDER_TYPE_TO_GO)
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<MyModel>() {
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
String str = e.getMessage();
Log.e("ERROR", "MESSSAGE: "+e.getMessage());
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
e.printStackTrace(printWriter);
printWriter.flush();
String stackTrace = writer.toString();
//getView().showErrorOnCreateOrder();
}
@Override
public void onNext(MyModel model) {
getView().goToOrderMenu(anotherModel, model);
}
});
}
}
只是爲了填充爲MyModel對象。每次發出請求時,我都會收到400錯誤消息。 MyModel對象的結構沒有改變,即方法的任何字段都沒有添加到類中。 被調用的createModel方法是一個PUT調用。 以下是錯誤的堆棧跟蹤。
retrofit.RetrofitError: 400 Bad Request
at retrofit.RestAdapter$RestHandler.invokeRequest(RestAdapter.java:388)
at retrofit.RestAdapter$RestHandler.access$100(RestAdapter.java:220)
at retrofit.RestAdapter$RestHandler$1.invoke(RestAdapter.java:265)
at retrofit.RxSupport$2.run(RxSupport.java:55)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at retrofit.Platform$Android$2$1.run(Platform.java:142)
at java.lang.Thread.run(Thread.java:841)
我無法得知正在發生什麼。我不知道這是否發生,因爲服務器上的數據模型是錯誤的,這發生在我身邊(客戶端)。
檢查您的請求,嘗試通過終端和捲曲進行請求。 – shmakova
@shmakova你能給我一個樣本嗎?我是這個主題的新手。 – learner