【发布时间】:2019-01-09 21:19:05
【问题描述】:
所以我是 OData 新手,我需要使用供应商 OData V4 服务,该服务需要在标头授权中使用不记名令牌。我正在尝试为实体和属性创建强类型类,这将在 Microsoft Visual Studio 中提供 IntelliSense 支持。我正在遵循以下示例,但在标题中添加授权时我迷失了。在 MSDN 或谷歌上找不到任何东西。如果可能的话,有人可以提供帮助或建议吗?我正在使用 VS 2017 企业版。
【问题讨论】:
所以我是 OData 新手,我需要使用供应商 OData V4 服务,该服务需要在标头授权中使用不记名令牌。我正在尝试为实体和属性创建强类型类,这将在 Microsoft Visual Studio 中提供 IntelliSense 支持。我正在遵循以下示例,但在标题中添加授权时我迷失了。在 MSDN 或谷歌上找不到任何东西。如果可能的话,有人可以提供帮助或建议吗?我正在使用 VS 2017 企业版。
【问题讨论】:
生成的DataServiceContext 有一个名为SendingRequest2 的事件,它会在发送实际HTTP 请求(事件参数的属性之一)之前公开它们。您可以向该事件添加处理程序并操作 HTTP 请求以添加适当的标头。比如:
context.SendingRequest2 += (s, e) =>
{
e.RequestMessage.SetHeader("Authorization", token);
};
【讨论】: