Таким образом, у меня возникает проблема при вызове rest-auth/user/
.Django Rest Auth Token в Android Volley
Я могу войти и получить ключ от указанного логина, но из этого я не уверен, как его использовать в отношении rest-auth/user/
. Я пробовал использовать его с GET
в залпе, а также POST
Прогулка по нему. Но каждый раз, когда я пытаюсь это сделать, я получаю обратно 403, говоря, что учетные данные не были предоставлены. Я также попытался сохранить токен на Android SharedPreferences
.
Я не уверен, что может быть неправильным или как решить эту проблему, поэтому любая помощь будет оценена по достоинству.
Мой код выглядит следующим образом:
getUserQueue = Volley.newRequestQueue(this);
JSONObject jsObj = new JSONObject();
try {
jsObj.put("token", token);
} catch (JSONException e) {
e.printStackTrace();
}
JsonObjectRequest jsObjRequest = new JsonObjectRequest
(Request.Method.GET, "http://hurst.pythonanywhere.com/supportal/rest-auth/user/", jsObj, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
result = response.getString("username");
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
error.printStackTrace();
}
});
// add the request object to the queue to be executed
getUserQueue.add(jsObjRequest);
методы GET не использовать HTTP-тело, так что я не уверен, что 'jsObj' делает в качестве параметра –
возможность сделать запрос с помощью CURL или Почтальон ты? Я бы попробовал это, прежде чем писать его в Android. –
Использование почтальона. Мне не удалось получить доступ через GET или POST с полученным токеном. Получаю ответное сообщение: {"detail": «Учетные данные аутентификации не были предоставлены. "} Кажется, что вы запустили данные сеанса/файлы cookie в своем браузере, потому что, если я войду в свой браузер и попытаюсь получить доступ к конечной точке пользователя, он вернет информацию об учетной записи, в которую я вошел. – user2302876