2017-03-31 4 views
0

私のサーバーにPOST retrofitメソッドにStringを渡そうとしています。POSTパラメータとして文字列を渡すペイロードの改訂

Observable<MyOrder> addNoteOrder(@Header("Token1")String token1, 
           @Header("Token2")String token1, 
           @Path("orderId")long orderId, 
           @Body String orderNote); 

そして、私はこの方法をキャリンよ:: これは私の呼び出しです

mRestApi.addNoteOrder("token1", "token2", "0", "001"); 

Debuggin私のサーバーと、それはエラーがペイロードの作成である私に語ったので、私は、500エラーを抱えています。

したがって、サーバーにペイロードとしてStringオブジェクトを送信するにはどうすればよいですか。これは初めてのことです。

+0

あなたのAPIは何であるサービスを呼び出す必要がありますか?パラメータの2倍のトークン1? – eurosecom

答えて

0

は、POST urlのパラメータを、渡す文字列で置き換えます。それは

@POST("some/{orderId}") 
Call<MyOrder> addNoteOrder(@Path("orderId") long orderId, 
          @Header("Token1") String token1, 
          @Header("Token2") String token1, 
          @Body String orderNote); 

のようなものを見て、

Call<MyOrder> responseBodyCall = mRestApi.addNoteOrder(params); 
responseBodyCall.clone().enqueue(new Callback<MyOrder>() { 
    @Override 
    public void onResponse(Call<MyOrder> call, Response<MyOrder> response) { 

    } 

    @Override 
    public void onFailure(Call<MyOrder> call, Throwable t) { 

    } 
}); 
+0

私はretrofit 1.9を使用しています – learner

関連する問題