【发布时间】:2019-02-11 07:15:12
【问题描述】:
我实际上有一个肥皂信封,如下所述。通过 POSTMAN 或 SOAP UI 运行它,我得到了想要的结果。但是,在添加 DOCTYPE 时,它给了我 400 Bad Request。下面是xml
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!DOCTYPE doc
[<!ENTITY win SYSTEM \"file:///C:/Users/user/Documents/testdata2.txt\">]>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:koh="http://kohls.com/">
<soapenv:Header/>
<soapenv:Body>
<Process>
<doc>&win;</doc>
<!--Optional:-->
<webEnvelope>
<TraceEvents/>
<Properties>
<PropertyTO Name="Assembly" Value="IS.XS.Rf.Mls"/>
<PropertyTO Name="Type" Value="IS.XS.Rf.Mls.MlsRequestMessage"/>
</Properties>
<Pipeline>MlsMessagePipeline</Pipeline>
<TargetService>RfPriceChanges</TargetService>
<TargetTransaction>GetClearanceTicketLocations</TargetTransaction>
</webEnvelope>
</Process>
</soapenv:Body>
</soapenv:Envelope>
如果我从 xml 中删除 DOCTYPE 及其支持标记,它会成功运行并显示 200 状态代码。另外,根据网址:https://salesforce.stackexchange.com/questions/171003/soap-message-must-not-contain-a-document-type-declarationdtd
它说肥皂信封不再支持 DOCTYPE。我还检查了 SOAP Doc,但没有发现任何与 DTD 使用相关的内容。我错过了什么吗?任何帮助表示赞赏
【问题讨论】: