设置请求 Header SharePoint Web 服务
Set Request Header SharePoint web service
我正在使用 2010 SharePoint 列表 Web 服务 return 内容类型及其通过 C# 应用程序的字段。图书馆位于网络中,其语言设置为威尔士语,但备选语言为英语。这意味着如果浏览器中的 Internet 选项设置为英语,图书馆将以英语显示。
我已经能够为使用客户端 object 发出的请求设置 Accepts-Language header,但无法为 Web 服务这样做。
是否可以查看通过 SharePoint Web 服务发出的请求的 header,如果可以,如何查看?
我不知道您使用的是什么类型的网络服务。对于 WCF 服务,您可以使用:How to add a custom HTTP header to every WCF call?
对于 ASMX Web 服务:Adding SOAP headers to ASMX service requests .
在这两种情况下使用 Accept-Language header 就像 "Accept-Language:en"
对于 ASMX Web 服务,您可以考虑以下方法。 SoapHttpClientProtocol Class contains GetWebRequest Method
可用于指定自定义 headers。
生成代理 class 后,创建一个派生自它的 class 并设置自定义 header,如下所示:
public class ListsEx : Lists
{
protected override WebRequest GetWebRequest(Uri uri)
{
var request = base.GetWebRequest(uri);
//Add the Accept-Language header (for Danish) in the request.
request.Headers.Add("Accept-Language:da");
return request;
}
}
其中 Lists
是生成的代理的名称 class。
用法
using (var client = new ListsEx())
{
client.Url = webUri + "/_vti_bin/Lists.asmx";
var reult = client.GetList("Pages");
//...
}
结果
我正在使用 2010 SharePoint 列表 Web 服务 return 内容类型及其通过 C# 应用程序的字段。图书馆位于网络中,其语言设置为威尔士语,但备选语言为英语。这意味着如果浏览器中的 Internet 选项设置为英语,图书馆将以英语显示。 我已经能够为使用客户端 object 发出的请求设置 Accepts-Language header,但无法为 Web 服务这样做。
是否可以查看通过 SharePoint Web 服务发出的请求的 header,如果可以,如何查看?
我不知道您使用的是什么类型的网络服务。对于 WCF 服务,您可以使用:How to add a custom HTTP header to every WCF call? 对于 ASMX Web 服务:Adding SOAP headers to ASMX service requests .
在这两种情况下使用 Accept-Language header 就像 "Accept-Language:en"
对于 ASMX Web 服务,您可以考虑以下方法。 SoapHttpClientProtocol Class contains GetWebRequest Method
可用于指定自定义 headers。
生成代理 class 后,创建一个派生自它的 class 并设置自定义 header,如下所示:
public class ListsEx : Lists
{
protected override WebRequest GetWebRequest(Uri uri)
{
var request = base.GetWebRequest(uri);
//Add the Accept-Language header (for Danish) in the request.
request.Headers.Add("Accept-Language:da");
return request;
}
}
其中 Lists
是生成的代理的名称 class。
用法
using (var client = new ListsEx())
{
client.Url = webUri + "/_vti_bin/Lists.asmx";
var reult = client.GetList("Pages");
//...
}
结果