从客户端发送的 id 值是通过 Android 应用程序发送的,这就是我将 id 值发送到 PHP 脚本的方式:
RetrofitManager 类
public class RetrofitManager {
private static RetrofitManager.Api api;
public static RetrofitManager.Api getApi() {
if (api == null)
api = new Retrofit.Builder()
.baseUrl("http://192.151.5.721/API/")
.client(new OkHttpClient.Builder().readTimeout(3, TimeUnit.MINUTES).writeTimeout(3, TimeUnit.MINUTES).connectTimeout(25, TimeUnit.SECONDS).build())
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJava3CallAdapterFactory.create())
.build()
.create(Api.class);
return api;
}
public interface Api {
@FormUrlEncoded
@POST("Countries/Get.php")
Single getCountries(@Field("id") int countryId);
}
}
CountriesRepository 类
public class CountriesRepository {
public LiveData
所有通过 HTTP 的请求都作为字符串发送。我们必须根据我们的需要来铸造它。就你而言,行为很奇怪。尝试检查两端的PHP版本是否相同。