我正在使用 MSSOAP.SOAPClinet30 使用 Classic ASP 发出 SOAP Web 服务请求,它返回 XML 并且它有一个它处理的外部实体。
SET objSoapClient = Server.CreateObject("MSSOAP.SoapClient30")
objSoapClient.ClientProperty("ServerHTTPRequest") = True
Call objSoapClient.mssoapinit("URL","Method")
If Len(base64str & "") > 0 Then
strOutput = objSoapClient.ParseDocNew("Data","filename.docx",base64str,"","","","")
End If
假设,Web 服务方法返回以下 XML:
<!DOCTYPE doc [
<!ENTITY win SYSTEM “c:\windows\win.ini">
]>
<doc>
&win;
</doc>
在这种情况下,它处理外部实体和披露信息。
那么,有没有办法通过使用“MSSOAP.SoapClient30”或我可以在经典 ASP 中使用的任何其他相关组件来防止 DTD 处理。