[英]Yahoo social login not working django-allauth
我正在嘗試使用 django-allauth 實現 Yahoo Social Login,到目前為止,我已經能夠使用 google 成功地做到這一點,而且我也相信 Facebook 和 Amazon,但是,那些需要 HTTPS 才能工作,以及我的本地主機服務器正在使用 HTTP,所以我只有在我在線托管后才會發現,如果有人可以幫助我在 localhost 上測試,那也很好,但主要問題是當我登錄雅虎時,我收到一條錯誤消息在雅虎頁面上說
哦哦!
好像出了什么問題。
請稍后再試。
然后在下面說
開發者:請指定一個有效的請求並再次提交。
在搜索了 web 之后,我有理由相信這是因為雅虎收到了無效的 URL 請求,這里是那個問題的鏈接
這是我嘗試登錄時在 URL 欄中的鏈接
https://api.login.yahoo.com/oauth2/request_auth_fe?client_id=dj0yJmk9OWE0Y1JZQ2NMZ3dOJmQ9WVdrOVIyNVdRMHhWWVVnbWNHbzlNQT09JnM9Y29uc3VtZXJzZWNyZXQmc3Y9MCZ4PWM5&redirect_uri=http%3A%2F%2F127.0.0.1%3A8000%2Faccounts%2Fyahoo%2Flogin%2Fcallback%2F&scope=sdps-r&response_type=code&state=W9uBoxwTCi66
無論如何,即使這是原因,我也不知道如何解決它,也找不到這樣的解決方案,請有人幫助我,
非常感謝。
雅虎不會使用 http 作為回調,因此您應該將 https 添加到本地環境中。 為此,您必須:
例如,如果您在本地運行 gunicorn 以模擬生產,您可以使用mkcert創建本地證書,然后在啟動服務器時通過添加--certfile FILE
和--keyfile FILE
將 gunicorn 指向它們,如 SSL 部分所述在獨角獸。
附加說明:除了在回調 uri 中不接受 http 之外,Yahoo 可能不允許它是 127.0.0.1:8000,即使是安全的,所以您可能需要組成一個域並將您的計算機設置為指向 127.0。 0.1 在 hosts 文件中,如此處所述。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.