2017-12-04 12 views
1

json-rpcretrofit2で送信しようとしました。 これは私のインターフェイスです:retrofit2経由でJson-rpcを送信するには?

public interface ApiInterfaceJson { 

@POST 
@Headers("Content-Type: application/json") 
Call<String> getDataJson(
     @Url String url, 
     @Body RequestBody body); 

}

retrofitを作成します。

retrofitJson = new Retrofit.Builder() 
      .addConverterFactory(ScalarsConverterFactory.create()) 
      .baseUrl("http://localhost:8800") 
      .client(client) 
      .build(); 

    apiInterfaceJson = retrofitJson.create(ApiInterfaceJson.class); 

コール:

JSONObject paramObject = new JSONObject(); 
    try { 
     paramObject.put("id", "0"); 
     paramObject.put("name", "user"); 
     paramObject.put("command", "finish"); 
    }catch(Exception e){ 
    } 
    RequestBody requestBody= RequestBody.create(MediaType.parse("application/json"), paramObject.toString());  
MinersMonitorApplication.getApiJson().getDataJson("http://10.10.10.230:10000", requestBody).enqueue(new Callback<String>() { 
      @Override 
      public void onResponse(@NonNull Call<String> call, @NonNull Response<String> response) {}    
      @Override 
      public void onFailure(Call<String> call, Throwable t) { 
      } 
     }); 

結果はSocketTimeoutExceptionです。

答えて

0

てみアド権限

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
関連する問題