C# 在C中调用swagger API#

C# 在C中调用swagger API#,c#,web-services,swagger,postman,restsharp,C#,Web Services,Swagger,Postman,Restsharp,我有一个API来获取在Swagger中创建的数据。我只有一个基本URL和一个用户名、密码和一个令牌。当我转到URL时,它将转到登录页面,登录后,我们可以访问API列表并从中获取数据 现在我需要在C#中使用restsharp来完成。这样我就可以在JSON中得到结果,并可以将值更新为DB 这是我在C语言中使用的代码# 这是一个连接关闭错误 我在chrome的postman应用程序中尝试了API,它得到了以下错误 { "detail": "Authentication credentials

我有一个API来获取在Swagger中创建的数据。我只有一个基本URL和一个用户名、密码和一个令牌。当我转到URL时,它将转到登录页面,登录后,我们可以访问API列表并从中获取数据

现在我需要在C#中使用restsharp来完成。这样我就可以在JSON中得到结果,并可以将值更新为DB

这是我在C语言中使用的代码#

这是一个连接关闭错误

我在chrome的postman应用程序中尝试了API,它得到了以下错误

{
    "detail": "Authentication credentials were not provided."
}
这是带令牌的邮递员呼叫的屏幕截图

这是带有基本身份验证的邮递员呼叫的屏幕截图

你能帮我一下我做错了什么吗。我认为API使用的是基于会话的身份验证。
提前谢谢。

我认为您的标题不正确。而不是

request.AddHeader("Token", "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
尝试添加

request.AddHeader("Authorization", "Token 9944b09199c62bcf9418ad846dd0e4bbdfc6ee4b");

检查此链接。您需要向restsharp客户端添加用户名和密码。我也使用了用户名和密码,但上面说“未提供身份验证凭据”。编辑了我的代码。如果您正在发送用户名和密码,请求方法应为POST not GET。用POST方法试试。用POST方法试试,没用。我认为这与swagger API有关。根据
WWW-Authenticate:JWT realm=“API”
中看到的响应头应该是
JWT xxxxx
,而不是
Token xxxxx
request.AddHeader("Authorization", "Token 9944b09199c62bcf9418ad846dd0e4bbdfc6ee4b");