我正在使用Django Rest Framework创建API。当我在本地运行它时,它很好用,但是当我将其部署到服务器中时,JWT出现了问题。当我尝试发布新数据时,收到一条错误消息:
“详细信息”:“未提供身份验证凭据。”
当然,我要传递Authorization标头:
authorization: JWT eyJ0eXAiOiJK.....
在我的服务器上,我将ggincorn与nginx配合使用。这是我的Nginx配置:
upstream api {
server unix:/home/bartalamej/api.sock fail_timeout=0;
}
server {
listen 80;
root /var/www/html;
index index.html index.html;
server_name api.mysite.cz;
location /v1 {
rewrite ^/v1/(.*)$ /$1 break;
include proxy_params;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header REMOTE_USER $remote_user;
proxy_set_header Authorization $http_authorization;
proxy_set_header USE_X_FORWARDED_HOST True;
proxy_pass http://api;
}
location /media {
alias /home/bartalamej/api/media;
}
location /static {
alias /home/bartalamej/api/static;
}
}
任何帮助将不胜感激:)
答案 0 :(得分:1)
问题出在我的Django配置上。在我的生产设置中,缺少身份验证类