我一定要得到它的ID的用戶的數據和數據將在Android usind改造中使用,我的PHP的Web服務是Web服務不發送正確的響應
<?php
$con = mysqli_connect("localhost", "admin", "pwd", "api");
$id = $_POST["id"];
$sql= "SELECT * from users WHERE id = $id ";
$query = mysqli_query($conn, $sql)
$result= mysqli_fetch_array($query);
if ($result[0]>0) {
$json = array("name" => $result[1],"last_name" => $result[2], "email" => $result[3], "password" => $result[4],
"city" => $result[5], "address" => $result[6], "gender" => $result[7], "dob" => $result[8], "about" => $result[9],
"phone_number" => $result[10]);
header('content-type: application/json');
echo json_encode($json);
}
else {
$json = array("result" => "null", "status" => "invalid data");
header('content-type: application/json');
echo json_encode($json);
}
mysqli_close($con);
?>
我的改裝服務
@FormUrlEncoded
@POST("/getUserDetailsById.php")
Call<User> getUserDetail(@Field("id") int id);
在我的活動
我已經
String uid = mLoginPreferences.getString(Constant.USER_ID, "");
Log.e("PREF_ID", " is " + uid);
mUserCall = mRestManager.getApiService().getUserDetail(Integer.valueOf(uid));
mUserCall.enqueue(new Callback<User>() {
@Override
public void onResponse(Call<User> call, Response<User> response) {
User userDetails = response.body();
if (userDetails.getEmail() != null){
Log.e("RESPONSE_ID", " is " + userDetails.getName());
}
}
@Override
public void onFailure(Call<User> call, Throwable t) {
Log.e("DETAILS_ERROR", " message is " + t.getMessage());
}
});
在該行
Log.e("PREF_ID", " is " + uid);
我得到正確的id值,但無法從服務器獲取數據總是變爲空作爲respnse.body()
,想知道如何獲取特定用戶的數據使用其id。
您是否驗證過返回的狀態碼?是200Ok? – Sanoop
您在控制檯中看到什麼錯誤? –
嘗試在_Postman_和越來越__500內部服務器錯誤_狀態 –