我正在使用RestSharp进行GET api调用。通过传递授权标头,通过HTTP Basic身份验证对api调用进行身份验证。
服务器使用状态码307重定向api调用。我的客户端代码确实处理了重定向,但未将授权标头传递给此重定向的api调用。出于here所提及的正当理由而完成了此操作。因此,我确实收到了未经授权的错误。
如何配置RestClient恢复授权标头?
transform.LookAt (transform.position + movement.normalized);
答案 0 :(得分:1)
我添加了一张支票,该支票重新发送了使用以下代码接收401的api请求。
var client = new RestClient("https://serverurl.com");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Basic Z3JvdXAxOlByb2otMzI1");
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Tenant-Id", "4892");
IRestResponse response = client.Execute(request);
//Resend the request if we get 401
int numericStatusCode = (int)response.StatusCode;
if(numericStatusCode == 401) {
var redirectedClient = new RestClient(response.ResponseUri.ToString());
IRestResponse newResponse = redirectedClient.Execute(request);
Console.WriteLine(newResponse.ResponseStatus);
}