Flask-oauthlibを使用して、oauth2サーバーとoauth2クライアントを実装しました。
ローカルでテストしようとすると、クライアントはInsecureTransportErrorを返し、httpsを使用する必要があることを通知します。
Httpsなしでアプリをローカルでテストする方法はありますか?
クライアントは127.0.0.2:5000で実行されており、サーバーは127.0.0.1:5000で実行されています。
ありがとう
http://requests-oauthlib.readthedocs.org/en/latest/examples/real_world_example.html から:
Oauth2はSSLレイヤーを介して機能することに注意してください。サーバーがHTTPSを許可するようにパラメーター化されていない場合、fetch_tokenメソッドはoauthlib.oauth2.rfc6749.errors.InsecureTransportErrorを送出します。ほとんどの人はテスト中にサーバーにSSLを設定しませんが、それは問題ありません。このチェックを無効にするには、次の2つの方法があります。
- 環境変数を設定する。
export OAUTHLIB_INSECURE_TRANSPORT=1
- 上記と同等で、これをPythonで設定できます(環境変数の設定に問題がある場合))
# Somewhere in webapp_example.py, before the app.run for example
import os
os.environ['OAUTHLIB_INSECURE_TRANSPORT'] = '1'
OAuth1の場合、設定を追加できます
app.config.update({
'OAUTH1_PROVIDER_ENFORCE_SSL': False
})
OAuth2の場合、環境変数で設定できます。
export OAUTHLIB_INSECURE_TRANSPORT=1
または実行時に
import os
os.environ['OAUTHLIB_INSECURE_TRANSPORT'] = '1'
Authlibの使用者の場合:
export AUTHLIB_INSECURE_TRANSPORT=1
または、プログラムで設定する場合:
# Somewhere in webapp_example.py, before the app.run for example
import os
os.environ['AUTHLIB_INSECURE_TRANSPORT'] = '1'
私はそれが質問に答えていないことを知っています、しかし私がそれについてGoogleに尋ねるたびに私はこのページに行きます。