gpt4 book ai didi

c# - 如何在 C# 中公开 WCF Web 服务调用响应 header

转载 作者:行者123 更新时间:2023-11-30 17:17:14 25 4
gpt4 key购买 nike

我正在使用 Visual Studio 2008 并添加了一个指向 WCF Web 服务的 Web 引用。Visual Studio 已自动生成一个客户端类,因此调用 Web 服务所需要做的就是创建一个客户端实例并调用它的方法。

FoodPreferenceServiceClient client = new FoodPreferenceServiceClient(); 
FoodPreferenceServiceResponse = client.GetFoodPreference();

FoodPreferenceServiceClient 是 VS 自动生成的 Web 服务客户端。GetFoodPreference 是我正在调用的 Web 服务上的方法。

我的问题是我想公开在上述调用中收到的实际 HTTP header ,比如 client.GetHttpResponse() 之类的。

有办法吗?

最佳答案

是的,这应该是可能的。尝试:

using (var scope = new OperationContextScope())
{
var client = new FoodPreferenceServiceClient();
response = client.GetFoodPreference();

var httpProperties = (HttpResponseMessageProperty)OperationContext.Current
.IncomingMessageProperties[HttpResponseMessageProperty.Name];

var headers = httpProperties.Headers;
// Now you should be able to work with WebHeaderCollection and find the header you need
}

关于c# - 如何在 C# 中公开 WCF Web 服务调用响应 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6663644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com