我已经使用flask-oauthlib实现了一个oauth2服务器和一个oauth2客户机。
当我尝试在本地测试时,客户端返回一个InsecureTransportError,并告诉我应该使用https。
有没有办法在没有https的情况下在本地测试应用程序?
客户端在127.0.0.2:5000上运行,服务器在127.0.0.1:5000上运行。
谢谢
发布于 2015-01-06 02:44:19
来自http://requests-oauthlib.readthedocs.org/en/latest/examples/real_world_example.html
你应该注意到Oauth2是通过
层工作的。如果您的服务器未参数化为允许oauthlib.oauth2.rfc6749.errors.InsecureTransportError,则fetch_token方法将引发HTTPS。大多数人在测试时不会在服务器上设置SSL,这是可以接受的。您可以通过两种方式禁用此检查:
通过设置环境变量来
export OAUTHLIB_INSECURE_TRANSPORT=1中对其进行设置(如果在设置环境变量时遇到问题
# Somewhere in webapp_example.py, before the app.run for example
import os
os.environ['OAUTHLIB_INSECURE_TRANSPORT'] = '1'发布于 2015-11-03 15:59:22
对于OAuth1,您可以添加设置
app.config.update({
'OAUTH1_PROVIDER_ENFORCE_SSL': False
})对于OAuth2,您可以在环境变量中进行设置。
export OAUTHLIB_INSECURE_TRANSPORT=1或者在运行时
import os
os.environ['OAUTHLIB_INSECURE_TRANSPORT'] = '1'发布于 2019-05-31 16:29:33
用于Authlib的 :
export AUTHLIB_INSECURE_TRANSPORT=1或者,如果您想以编程方式设置它:
import os
os.environ['AUTHLIB_INSECURE_TRANSPORT'] = '1'我知道它没有回答我的问题,但每次我向谷歌询问这个问题时,我都会登陆这个页面。
https://stackoverflow.com/questions/27785375
复制相似问题