【发布时间】:2021-03-24 11:15:27
【问题描述】:
我正在使用django-rest-framework 开发一个RESTFUL API。对于授权,我选择使用令牌授权(不是 JWT)。以下是我尝试过的:
使用 POSTMAN(作品)
headers:
Authorization: Token 329367424fd30a876ccff05dbc5a18d86fe7158c
使用 C# 客户端(不工作)
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Token 329367424fd30a876ccff05dbc5a18d86fe7158c");
await client.GetAsync(<url>)
// Authentication credentials were not provided.
在调试并覆盖 TokenAuthentication 函数后,我意识到如果来自 C# 客户端的请求,Authorization headers 将被删除。
编辑:
其实我已经尝试过使用 Javascript,它也可以,我认为问题是 C# HttpClient。
我试过了
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization3", $"token {token}");
client.DefaultRequestHeaders.Add("Authorization", $"token {token}");
我在python中调试Authorization函数,我发现只有Authorization3被发送到服务器,Authorization没有
【问题讨论】:
标签: c# django django-rest-framework gunicorn wsgi