Я работаю над простым http-приложением для Android.
У меня есть login.php на сервере, и я отправляю на него запросы со следующими значениями.
Uri.Builder loginUri =Uri.parse(LOGIN_API_URL).buildUpon();
loginUri.appendQueryParameter("username", username);
loginUri.appendQueryParameter("password", "FXK3guidUGU=");
aQuery.ajax(loginUri.build().toString(), JSONObject.class,loginResponse);
Запросы выполняются нормально, но код PHP получает пароль как FXK3guidUGU
, Вероятно, из-за символа равенства (=). Как я могу убедиться, что PHP получает пароль, включающий символ равенства (=)?
Вот мой PHP-код, который фильтрует пароль:
$password = filter_input(INPUT_GET, 'password', FILTER_SANITIZE_SPECIAL_CHARS);
Спасибо за вашу помощь.
попробуй использовать URLEncoder
Uri.Builder loginUri =Uri.parse(LOGIN_API_URL).buildUpon();
loginUri.appendQueryParameter("username", username);
loginUri.appendQueryParameter("password", URLEncoder.encode("FXK3guidUGU=", "UTF-8"));
aQuery.ajax(loginUri.build().toString(), JSONObject.class,loginResponse);
Других решений пока нет …