gpt4 book ai didi

c# - 带有显示错误的 Internet 代理服务器的 Windows WCF 客户端服务器违反了协议(protocol)。部分=响应状态行

转载 作者:可可西里 更新时间:2023-11-01 13:20:29 25 4
gpt4 key购买 nike

我们的团队试图创建一个 Windows 应用程序 (c#) 以使用 Internet 代理服务器调用 WCF 服务

调用 WCF 服务时显示异常“服务器违反了协议(protocol)。Section=ResponseStatusLine”

请给出解决这个问题/任何其他替代解决方案的建议

//Code for creating proxy
public static DevicesServiceClient CreateProxy()
{
var proxy = new DevicesServiceClient("BasicHttpBinding_IDevicesService");

BasicHttpBinding binding = new BasicHttpBinding();
binding.Security.Mode = BasicHttpSecurityMode.None;
binding.Security.Transport.ProxyCredentialType = HttpProxyCredentialType.None;
binding.UseDefaultWebProxy = false;
binding.ProxyAddress = new Uri(string.Format("http://{0}:{1}", "192.168.0.20","808"));
proxy.Endpoint.Binding = binding;

proxy.ClientCredentials.UserName.UserName = "Username";
proxy.ClientCredentials.UserName.Password = "Password";
}

服务器堆栈跟踪:

at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException, HttpWebRequest request, HttpAbortReason abortReason)
at ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at DevicesService.IDevicesService.CheckNetworkConnection(String ipAddress)

我在 app.config 中的客户端代码 alt text

我在 web.config 中的服务器端代码 alt text

最佳答案

我以前没有见过这个异常,但我已经遇到了很大的问题,无法让代理以这种方式工作。我不知道为什么,但是在 BasicHttpBinding 中设置代理地址并将默认代理设置为 false 对我来说从来没有用过。我总是不得不使用默认 Web 代理并在那里设置 URL,或者创建全新的自定义绑定(bind)并在 http 传输绑定(bind)元素中设置代理 URL。

关于c# - 带有显示错误的 Internet 代理服务器的 Windows WCF 客户端服务器违反了协议(protocol)。部分=响应状态行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3839002/

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