Префикс: я новичок в django.
Стек: oAuth2 + протокол PKCE, Angular, Django -oauth2-toolkit + REST
Продолжаю получать:
oauthlib.oauth2.rfc6749.errors.InvalidRequestError: (invalid_request) URL query parameters are not allowed <oauthlib.Request SANITIZED>
Никаких подробностей об ошибках в отношении содержимого запроса.
при попадании на сервер django oauth2 с запросом POST в формате pkce в Angular, например,
requestToken(code: string, state: string) {
const clientState = sessionStorage.getItem('pkce-state');
if (clientState !== state) {
console.error('States do not match!');
}
const verifier = sessionStorage.getItem('pkce-verifier');
return this.http.post('http://localhost:8000/o/token/',
{
headers: new HttpHeaders({'Content-Type': 'application/x-www-form-urlencoded'})
},
{
params:
new HttpParams()
.set('grant_type', 'authorization_code')
.set('code', code)
.set('redirect_uri', 'http://localhost:4200/dashboard')
.set('client_id', 'CLIENT_ID')
.set('state', state)
.set('verifier', verifier)
});
}
Не уверен, что происходит не так.
PS Ничто не выглядит закодированным, когда запрос напечатан в журнале django. Задача и верификатор работают иначе, ошибка будет указывать на это.