我已經安裝改裝2.1,它並沒有打電話給我的API。我只是安裝了一盞燈,讓我的ip可以公開訪問。我試圖通過POST發送信息到我的PHP腳本,這會將數據添加到我的數據庫。出於某種原因,改造不會對我的API進行調用......我不確定我做錯了什麼。改裝2沒有撥打電話
@POST("/sendInformation.php")
Call<JSONObject> sendUserInfo(@Body JSONObject userViewModel);
OkHttpClient.Builder client = new OkHttpClient.Builder();
HttpLoggingInterceptor logging = new HttpLoggingInterceptor(message -> Log.d(TAG, message));
logging.setLevel(HttpLoggingInterceptor.Level.BASIC);
client.addInterceptor(logging);
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.client(client.build())
.addConverterFactory(JacksonConverterFactory.create())
.build();
UserInformationService userService = retrofit.create(UserInformationService.class);
Call<JSONObject> call = userService.sendUserInfo(jsonObject);
call.enqueue(new Callback<JSONObject>() {
@Override
public void onResponse(Call<JSONObject> call, Response<JSONObject> response) {
Toast.makeText(HomeActivity.this, response.body().toString(), Toast.LENGTH_SHORT).show();
}
@Override
public void onFailure(Call<JSONObject> call, Throwable t) {
}
});
我試圖添加日誌記錄,但它不會打電話,所以我什至不能看到日誌記錄。有人有主意嗎?
編輯:我使用的BASE_URL是我的公有IP。我只是轉發我的端口,因此它是可訪問的。我試着在hurl.it上做一個POST,它工作正常。這只是改造不起作用。我也嘗試過使用asyncTask和httpURLConnection,它也可以。我必須錯過一些非常小的事情......
您需要在調用對象上調用其中一種阻塞或非阻塞方法。 –
@ MLProgrammer-CiM喜歡入隊? – cj1098