Am o aplicație web Flask care găzduiește în Google Cloud Run și care este găzduită https://mydomain.run.app.
Acum încerc să-i adaug autentificarea Google. Am creat API-ul sub acreditările în GCP. am dat https://mydomain.run.app/authorize în uri de redirecționare, dar când am încercat să mă autent din aplicația mea, îmi afișează o eroare de nepotrivire de redirecționare.
Și eroarea îmi arată http://mydomain.run.app/authorize.
Nepotrivirea este https și http
Când am încercat să dau http în uri de acreditări, mă aruncă
Redirecționare nevalidă: această aplicație are un statut de publicare „În producție”. URI trebuie să folosească https:// ca schemă.
@app.route('/login/google')
def google_login():
google = oauth.create_client('google')
redirect_uri = url_for('authorize', _external=True,_scheme='https')
return google.authorize_redirect(redirect_uri)
@app.route('/authorize')
def autorize():
google = oauth.create_client('google')
token = google.authorize_access_token()
resp = google.get('informații utilizator')
user_info = resp.json()
utilizator = oauth.google.userinfo()
session['profil'] = user_info
session.permanent = Adevărat
return redirect('/select')
Apoi am ajuns să cunosc aplicația mea însăși trimițând doar cerere http, așa că am încercat să adaug _scheme='https' în url_for în timpul redirecționării, dar acum primesc authlib.integrations.base_client.errors.MismatchingStateError: mismatching_state: CSRF Avertisment! Declarația nu este egală în cerere și răspuns. eroare. Mi-am schimbat cheia secretă în șir static în loc de numere aleatorii pe care le-am primit din alte răspunsuri. Dar încă nu am reușit să rezolv această problemă.