在请求中将值作为参数传递时,它可以工作:
curl "http://localhost:8080/wordgame/api/v1/rounds/?username=test_user&api_key=12345678907a9cb56b7290223165e0a7c23623df&format=json"
但是,当我尝试将值作为标头传递时,它不起作用。这导致401:
curl -H "Authorization: ApiKey test_user:12345678907a9cb56b7290223165e0a7c23623df" -H "Accept: application/json" http://localhost:8080/wordgame/api/v1/rounds/
我正在使用Tastypie ApiKeyAuthentication
答案 0 :(得分:6)
假设用户名/密钥正确,您的标题看起来是正确的。
尝试github master分支中的版本,从PyPI安装的pip也不会接受我的授权头。
我这样做了:
pip install https://github.com/toastdriven/django-tastypie/tarball/master --upgrade
答案 1 :(得分:0)
很抱歉添加几乎是重复的答案,但我还不能发表评论。我有同样的问题,正如另一个答案所提到的,我必须更新到最新的代码才能使它工作,因为它是在当前版本之后添加的。
有一点需要注意的是,默认情况下,readthedocs上的文档似乎跟踪最新的开发版本而不是特定版本。要更改此设置,您可以单击屏幕底部的“带给您阅读文档”图像,然后选择您正在使用的版本。