我正在使用API从中读取数据的网站。 APi以XML格式返回数据,我正在使用XmlDocument的Load()但在执行期间我得到一个异常"服务器提交了协议违规。节= ResponseStatusLine"在这条线上
doc.Load(url);
我不知道如何解决这个问题,我已经找到了答案,但找不到任何好处。
答案 0 :(得分:0)
"违反协议"当客户端(即XmlDocument类)和服务器无法使用给定的协议相互通信时(我假设它是您的情况下的http'协议),抛出异常。如果
,就会发生这种情况您可以在web.config文件中添加以下内容 - 这将创建日志文件" 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等工具来调查沟通。