我有一个用Flask编写的API,当我尝试使用AngularJS中的这个API时,我收到了401未经授权的错误,相同凭据的相同请求在Postman或HTTPie中运行正常。这是通过GET或POST请求发生的。
我注意到HTTPie和Angular请求之间的区别在于Angular在GET请求之前调用OPTIONS。
这是我需要身份验证的python代码(api是蓝图):
@api.before_request
@rate_limit(limit=5, period=15)
@auth_token.login_required
def before_request():
"""All routes in this blueprint require authentication."""
pass
从我的api工作的唯一方法是在这个蓝图之外,我的结论是@ api.before_request和@ auth_token.login_required期望为OPTIONS请求发送凭据,任何想法什么都可以我呢?
非常感谢
答案 0 :(得分:0)
我找出了问题,我在更新插件Flask-HTTPAuth后解决了。
我的版本是2.2.1,在转到3.2.1之后就解决了。
在Amazon EC2的实例上尝试相同并使用相同的解决方案解决了,所以我很确定这是这个。