Вход в систему с помощью интеграции Google с учетом того, что origin не разрешен на django

Я новичок в google sign in api, и я пытаюсь создать простое приложение, в котором пользователи регистрируются/входят в систему с помощью google one tap sign in, а затем видят свое имя и email. Я смог заставить google sign in работать как статическую веб-страницу на моем веб-сервере (apache), но как только я перенес его на django (я использую django для хранения электронной почты в базе данных), я получил ошибку:

[GSI_LOGGER]: The given origin is not allowed for the given client ID.

Я добавил url, привязанный к моему веб-серверу, в список авторизованных js origins, поэтому он работал как статическая страница с этого url, но он не работает при обслуживании через django. Является ли происхождение другим, когда оно исходит от django? Кроме того, я знаю, что есть способ достичь того, что я хочу, используя django social auth или django all auth, но я хочу получить вход одним касанием, используя этот код (в значительной степени основанный на этих документах от google: https://developers.google.com/identity/gsi/web/guides/migration , https://developers.google.com/identity/gsi/web/guides/handle-credential-responses-js-functions )

index.html:

    <script src="https://accounts.google.com/gsi/client" async defer></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script>
    <div id="g_id_onload"
         data-client_id=['my client id']
         data-auto_select="true"
         data-login_uri=['the url which was added to js origins']
         data-callback="handleCredentialResponse">
    </div>
    <div class="g_id_signin" data-type="standard"></div>
    <h4 id="name"></h4>
    <h4 id="email"></h4>
    <form method="POST">
      {%csrf_token%}
      <input type="hidden" value="" name="data" id="data"/>
    </form>
    <script>
      function handleCredentialResponse(response) {
         function parseJwt (token) {
              var base64Url = token.split('.')[1];
              var base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
              var jsonPayload = decodeURIComponent(window.atob(base64).split('').map(function(c) {
                  return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
              }).join(''));

              return JSON.parse(jsonPayload);
          };
         const responsePayload = parseJwt(response.credential);
         var name = document.getElementById('name');
         var email = document.getElementById('email');
         name.innerText = 'Full Name: ' + responsePayload.name;
         email.innerText = "Email: " + responsePayload.email;
         if (responsePayload.email.indexOf('@') > -1) {
              $('#data').val(responsePayload.email)

         }

      }


    </script>

views.py:

def store(request):
    email = ''
    if request.method == 'POST':
            email = request.POST.get('data')
            emailtomodel = Data(emails = email)
            emailtomodel.save()
    return render(request, 'index.html')

Любая помощь будет очень признательна!

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