Tay*_*lor 3 apache django curl
"它适用于我的机器."
我有一个django应用程序.我按照本教程.OAuth2在我的开发框中运行良好,如下所示:
$ curl -v -H "Authorization: OAuth c52676b24a63b79a564b4ed38db3ac5439e51d47" http://localhost:8000/api/v1/my-model/?format=json
Run Code Online (Sandbox Code Playgroud)
我的本地开发应用程序找到了这行代码的标题:
auth_header_value = request.META.get('HTTP_AUTHORIZATION')
Run Code Online (Sandbox Code Playgroud)
但是当我将它部署到运行apache的ubuntu盒子时却没有.
我将以下内容添加到authentication.py文件中,以便检查远程计算机上日志中的值.
logging.error(request.GET)
logging.error(request.POST)
logging.error(request.META)
Run Code Online (Sandbox Code Playgroud)
输出中神秘地缺少标题值.所以我得到401s.
你打开了WSGIPassAuthorization吗?
http://modwsgi.readthedocs.org/en/latest/configuration-directives/WSGIPassAuthorization.html
默认情况下不会传递授权标头,因为这样做可能会将有关密码的信息泄漏到WSGI应用程序,而该应用程序在Apache执行授权时应该无法看到它们.
| 归档时间: |
|
| 查看次数: |
1074 次 |
| 最近记录: |