Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# &引用;服务器提交的协议冲突。”;尝试从URL读取XML时出错_C#_Xml_Webclient - Fatal编程技术网

C# &引用;服务器提交的协议冲突。”;尝试从URL读取XML时出错

C# &引用;服务器提交的协议冲突。”;尝试从URL读取XML时出错,c#,xml,webclient,C#,Xml,Webclient,我对用C#编写的应用程序有问题。我在192.168.4.1的Web服务器上有一个XML文件(适用于模块ESP8266)。但当我试图从那个URL读取那个XML文件时,它会出错 “服务器提交的协议冲突..Section=ResponseStatusLine” 我读了很多关于这方面的东西,但这些解决方案都不适合我 这是我的密码: var url = "http://192.168.4.1/"; string xmlStr; using (var wc = new WebClient()) { x

我对用C#编写的应用程序有问题。我在192.168.4.1的Web服务器上有一个XML文件(适用于模块ESP8266)。但当我试图从那个URL读取那个XML文件时,它会出错

“服务器提交的协议冲突..Section=ResponseStatusLine”

我读了很多关于这方面的东西,但这些解决方案都不适合我

这是我的密码:

var url = "http://192.168.4.1/";
string xmlStr;
using (var wc = new WebClient())
{
   xmlStr = wc.DownloadString(url);
}
var xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xmlStr);
程序卡在线路上:

xmlStr = wc.DownloadString(url);
我试图在app.config中添加一些行:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <system.net>
    <settings>
      <httpWebRequest useUnsafeHeaderParsing="true" />
    </settings>
  </system.net>

  <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
</configuration>


但它不起作用。

您能发布整个异常错误消息吗?添加app.config应该已修复所有协议冲突。错误消息如下:…没有指向XML文件的路径,它位于192.168.4.1上,如下所示:再次检查app.config,并尝试添加一些凭据:
client.Credentials=CredentialCache.DefaultCredentials我编辑了我的问题,你现在可以看到完整的app.config了。我添加wc.Credentials=CredentialCache.DefaultCredentials;在xmlStr=wc.DownloadString(url)之前;但问题依然存在。我解决了我的问题!问题是,我必须发送一个HTTP头和数据。我原以为HTTP头是由ESP8266自动发送的,但事实并非如此。