空手道-有没有办法在XML请求中保留(或添加)DTD

时间:2019-09-06 15:58:57

标签: karate

空手道在读取XML时似乎正在丢弃其XML的DTD部分。我的要求绝对必须包含DTD。 我有办法添加它而不被丢弃吗?

我尝试过“设置”,但显然也将其丢弃。

我尝试使用“文本”,但是我的XML文件中的引用值也未解析,因此无法达到目的。

* def req = call read(myXML.xml)

myXML.xml看起来像这样

<!DOCTYPE mytype SYSTEM "RandomDTD.dtd">

<mytype>

</mytype>

当我打印要求时,我看到的是

<mytype>

</mytype>

1 个答案:

答案 0 :(得分:0)

在发送XML之前,先使用文本,然后使用字符串替换。有很多方法,请参见以下答案:https://stackoverflow.com/a/57042773/143475

编辑:一个提示是,如果您想使用字符串进行请求,但将内容类型设置为XML,则可以执行以下操作:

* xmlstring temp = <my>xml</my>
* temp.replace('<my>', '<!DOCTYPE blah><my>')
* header Content-Type = 'application/soap+xml'
* request temp
* method post