Я отправляю строковый запрос POST с некоторыми параметрами, но в скрипте PHP я всегда получаю значение параметра как ноль.Когда я тестирую PHP с почтальоном, он работает нормально.
это мой код запроса залпа:
public void login(final String mPhone, final String mEmail, final String mPassword) {
StringRequest stringRequest = new StringRequest(Request.Method.POST, URLs.LOGIN, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONObject jsonObject = new JSONObject(response);
if (jsonObject.getBoolean("error")) {
String error = jsonObject.getString("message");
if (error.equals("new user")) {
registerUser();
} else {
showProgress(false);
Snackbar.make(mOtpView, error, Snackbar.LENGTH_SHORT).show();
}
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
showProgress(false);
Snackbar.make(mOtpView, error.getMessage(), Snackbar.LENGTH_SHORT).show();
}
}) {
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<>();
params.put("phone", mPhone);
params.put("email", mEmail);
params.put("password", mPassword);
return params;
}
};
//Method to limit retry policy of request
stringRequest.setRetryPolicy(
new DefaultRetryPolicy(
DefaultRetryPolicy.DEFAULT_TIMEOUT_MS * 2,
3,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT
)
);
try {
//Adding request to request queue
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
} catch (Exception e) {
e.printStackTrace();
}
}
, а это мой PHP:
require_once 'DbConfig.php';
$response = array();
if (isset($_GET['apicall'])) {
switch ($_GET['apicall']) {
case 'login':
$phone = $_POST['phone'];
$email = $_POST['email'];
$pass = $_POST['password'];
echo $phone.$email.$pass;exit();
у меня естьПопытка добавления заголовка путем переопределения getHeaders (), а также попытка переопределения getBodyContent (), но, похоже, ничего не работает, а также приведенный выше код работает нормально, когда я использую его в localhost.Я проверил URL-адрес в порядке, потому что скрипт PHP в порядке, так как я проверил его, повторив другие вещи, которые он выполнил нормально.