服务器违反了协议.Section=ResponseStatusLine在c# ASP.. NET使用XmlDocumen
本文关键字:ASP NET XmlDocumen 使用 ResponseStatusLine 协议 Section 服务器 | 更新日期: 2023-09-27 18:05:56
我正在一个使用API读取数据的网站上工作。APi以XML格式返回数据,我正在使用XmlDocument的Load(),但在执行期间,我得到一个异常"服务器犯了协议违反。Section=ResponseStatusLine"在这一行doc.Load(url);
我不知道如何解决这个问题,我已经找了很多答案,但没有找到任何好的。
当客户端(即XmlDocument类)和服务器不能使用给定的协议相互通信时,抛出"协议违反"异常(我假设它是'http'协议在你的情况下)。如果
- 你试图使用服务器不理解的协议(例如'http' vs. http)。"https")
- 服务器故障
- 通信出现问题(例如代理)服务器、杀毒软件、网络连接不稳定等)
您可以在web中添加以下内容。这将创建包含所有通信详细日志的日志文件"System.Net.trace.log"。您可以搜索服务器的响应,或者客户端拒绝响应的原因。
<configuration>
<system.diagnostics>
<trace autoflush="true" />
<sources>
<source name="System.Net" maxdatasize="1024">
<listeners>
<add name="MyTraceFile"/>
</listeners>
</source>
</sources>
<sharedListeners>
<add
name="MyTraceFile"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="System.Net.trace.log"
/>
</sharedListeners>
<switches>
<add name="System.Net" value="Verbose" />
</switches>
</system.diagnostics>
</configuration>
或者,您可以使用Fiddler等工具来调查通信