我有一些Java Web服务(Https)的C#存根(在Visual Studio 2008,.NET 2.0中创建)。 服务器不允许对请求进行分块。 我能够在HttpWebRequest中将sendChunked设置为false。
当我调用网络服务方法时,这些方法的数据非常少,但它们的工作正常 但是,当我发送包含大量数据的请求时,我收到“无法解析请求”错误。
这是两件奇怪的事情:
答案 0 :(得分:0)
答案 1 :(得分:0)
我从你的描述中不清楚“存根”是什么意思。你的意思是你已经创建了一个Java服务的Web引用?
如果是这样,您可以覆盖GetWebRequest
方法以返回您自己的HttpWebRequest,并将SendChunked
属性设置为false:
public partial class Service1
{
protected override WebRequest GetWebRequest(Uri uri)
{
HttpWebRequest request = (HttpWebRequest) base.GetWebRequest(uri);
request.SendChunked = false;
return request;
}
}
如果这不是您要求的,请澄清。
答案 2 :(得分:0)
我解决了这个问题。 看起来当我在Visual Studio中使用“添加Web引用”创建存根到Web服务方法时,它正在向Web请求添加一些内容,这使得服务器不满意。 我编写了自己的方法,从头开始创建XML并发送Web请求而不使用任何存根,它工作正常。 我讨厌这样的问题。