Сервер авторизации отправляет обратно неавторизованную ошибку независимо от того, что

Я пытаюсь аутентифицировать пользователей из другого стороннего приложения. Сервер авторизации использует oauth2. Все мои учетные данные клиента верны. Но когда я получаю запрос на получение кода от сервера авторизации. Согласно документации сервера авторизации, я должен кодировать state в bas64.

Ниже приведено мое мнение

def one_id_login(request):
    state = "{'method':'IDPW'}";
    state = base64.b64encode(state.encode('ascii'))
    state = state.decode()

    scope = 'e_mehmon'

    redirect_url = 'http://127.0.0.1:8000/home/o/redirect/'
    return render(request, 'client/login.html', {'url': auth_one_id_url, 'state': state, 'scope': scope, 'redirect': redirect_url})

А это HTML

<body>
    <form name="OAuthForm" action="{{ url }}" method="get">
        <input type="hidden" name="response_type" value="one_code" />
        <input type="hidden" name="client_id" value={{client_id}} />
        <input type="hidden" name="redirect_uri" value={{ redirect }} />
        <input type="hidden" name="scope" value={{e_scope}} />
        <input type="hidden" name="state" value={{ state }} />
    </form>

    <script type="text/javascript">
        document.OAuthForm.submit();
    </script>
</body>

Но всегда я получаю следующее сообщение об ошибке

{'error': 'unauthorized_client', 'error_description': 'Unknown Client'}

Вернуться на верх