use*_*431 32 flask oauth-2.0 flask-oauthlib
我使用flask-oauthlib实现了oauth2服务器和oauth2客户端.
当我尝试在本地测试时,客户端返回InsecureTransportError并告诉我应该使用https.
有没有办法在没有https的情况下在本地测试应用程序?
客户端在127.0.0.2:5000上运行,服务器在127.0.0.1:5000上运行.
谢谢
Han*_* Z. 70
来自http://requests-oauthlib.readthedocs.org/en/latest/examples/real_world_example.html:
您应该注意Oauth2通过SSL层工作.如果您的服务器未参数化以允许HTTPS,则fetch_token方法将引发oauthlib.oauth2.rfc6749.errors.InsecureTransportError.大多数人在测试时都没有在他们的服务器上设置SSL,这很好.您可以通过两种方式禁用此检查:
- 通过设置环境变量.
export OAUTHLIB_INSECURE_TRANSPORT=1
Run Code Online (Sandbox Code Playgroud)
- 相当于上面你可以在Python中设置它(如果你在设置环境变量时遇到问题)
# Somewhere in webapp_example.py, before the app.run for example
import os
os.environ['OAUTHLIB_INSECURE_TRANSPORT'] = '1'
Run Code Online (Sandbox Code Playgroud)
fai*_*din 19
对于OAuth1,您可以添加设置
app.config.update({
'OAUTH1_PROVIDER_ENFORCE_SSL': False
})
Run Code Online (Sandbox Code Playgroud)
对于OAuth2,您可以设置环境变量.
export OAUTHLIB_INSECURE_TRANSPORT=1
Run Code Online (Sandbox Code Playgroud)
或在运行时
import os
os.environ['OAUTHLIB_INSECURE_TRANSPORT'] = '1'
Run Code Online (Sandbox Code Playgroud)
对于 Authlib 用户:
export AUTHLIB_INSECURE_TRANSPORT=1
Run Code Online (Sandbox Code Playgroud)
或者,如果您想以编程方式设置它:
import os
os.environ['AUTHLIB_INSECURE_TRANSPORT'] = '1'
Run Code Online (Sandbox Code Playgroud)
我知道它没有回答这个问题,但每次我向谷歌询问它时,我都会进入这个页面。
| 归档时间: |
|
| 查看次数: |
11800 次 |
| 最近记录: |