我正在实现Apiary的其他同事制作的API。io,在Windows应用商店应用程序项目中。
它们显示了我必须实现的方法的示例:
var baseAddress = new Uri("https://private-a8014-xxxxxx.apiary-mock.com/");
using (var httpClient = new HttpClient{ BaseAddress = baseAddress })
{
using (var response = await httpClient.GetAsync("user/list{?organizationId}"))
{
string responseData = await response.Content.ReadAsStringAsync();
}
}
在这个和其他一些方法中,我需要有一个带有我之前获得的令牌的标头。
如何将该授权标头添加到请求中?
接受的答案有效,但当我想尝试添加接受标头时可能会变得复杂。这就是我最终得到的。对我来说似乎更简单,所以我想我将来会坚持使用它:
client.DefaultRequestHeaders.Add("Accept", "application/*+xml;version=5.1");
client.DefaultRequestHeaders.Add("Authorization", "Basic " + authstring);
将GetAsync与HttpClient一起使用时,您可以添加授权标头,如下所示:
httpClient.DefaultRequestHeaders.Authorization
= new AuthenticationHeaderValue("Bearer", "Your Oauth token");
这确实会在HttpClient的生命周期中添加授权标头,因此,如果您访问的站点的授权标头没有更改,这将非常有用。
这里有一个详细的SO答案
后来的回答,但因为没有人给出这个解决方案。。。
如果不想通过将头添加到DefaultRequestHeaders来设置HttpClient实例上的头,可以为每个请求设置头。
但是您必须使用sendaync()方法。
如果您想重用HttpClient,这是正确的解决方案,这对于
使用方法如下:
using (var requestMessage =
new HttpRequestMessage(HttpMethod.Get, "https://your.site.com"))
{
requestMessage.Headers.Authorization =
new AuthenticationHeaderValue("Bearer", your_token);
await httpClient.SendAsync(requestMessage);
}
我们什么时候应该在HttpRequest estMessage对象中使用标头而不是HttpClient中的标头?? 我们需要添加授权(总是在变化)和一些自定义标头(总是在变化) 问题 > 首选哪种方法 我是否应该向HttpClient添加公共头(所有请求都相同),并向HttpRequestMessage对象添加基于请求的头??
我使用GraphQL. Client Nuget包调用需要Content-Type头的Graphql API。以下是我正在做的 设置GraphQL选项。注:我已经设置了选项。媒体类型 初始化客户端和授权标头 GraphQL查询 调用API并检索响应结果 但是,我收到错误的请求,错误为“{”errors:[{”message:“必须提供查询字符串。”}]}” 我做错了什么?如何正确设置内容类型标题。
这是我的密码: 这里是网络调试: 数据存储在请求有效载荷中,但在我的服务器中没有收到POST值: 我相信这个错误来自于帖子中没有设置标题,我做错了什么?
我正在开发一个带有Spring Cloud的网关,我需要拦截消耗Oauth的请求,然后获取响应并添加带有jwt值的标头(Ouath的响应) 我的筛选代码: 我的服务: 完整代码Gitlab 错误: java.lang.IllegalStateException:块()/块第一()/块最后()被阻塞,线程reactor-超文本传输协议-nio-3不支持 当我使用String token=rep.bl
问题内容: 我正在尝试创建一个独立的客户端来使用某些Web服务。我必须将我的用户名和密码添加到SOAP Header。我尝试添加凭据,如下所示: 当我在服务上调用方法时,出现以下异常: 我究竟做错了什么?如何将这些属性添加到SOAP Header? 编辑:我正在使用JDK6中包含的JAX-WS 2.1。我现在正在使用JAX-WS 2.2。我现在得到以下异常: 如何创建此令牌? 问题答案: 不是10
我正在尝试生成一个带有授权标头的HTTP请求: 但此代码生成的请求不包含授权头: Cache-Control:无缓存 access-control-request-method: 来源:http://localhost:3021 接受语言:en-US,en;q=0.8,he;q=0.6 我做错了什么?