Restsharp 返回 403 而 Postman 返回 200

ste*_*low 5 c# httpclient restsharp wp-api

这是 Postman 为成功调用我的页面而提供的(修改后的)片段。

var client = new RestClient("http://sub.example.com/wp-json/wp/v2/users/me");
var request = new RestRequest(Method.GET);
request.AddHeader("authorization", "Basic anVyYTp3MmZacmo2eGtBOHJsRWrt");
IRestResponse response = client.Execute(request);
Run Code Online (Sandbox Code Playgroud)

但是当放置在我的 c# 应用程序中时,它返回 403 forbidden,而 Postman 生成它并收到 200。当我在我的应用程序中使用 httpclient 时会发生同样的事情(403)。

Yuv*_*kov 2

改用RestClient.Authenticator

var client = new RestClient("http://sub.example.com/wp-json/wp/v2/users/me")
{ 
      Authenticator = new HttpBasicAuthenticator("User", "Pass")
};

var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
Run Code Online (Sandbox Code Playgroud)

编辑:

由于问题(如评论中提到的)是不通过重定向进行身份验证的事实,我建议将与设置身份验证流动的位置RestSharp结合起来。HttpClientHttpClientHandler