包含 XML 的 POST 需要什么请求 headers?

What request headers are required for a POST containing XML?

从 Excel VBA,我正在 POSTing 到一个 API,它将 XML 作为参数之一。

它工作正常,除非 XML 中有符号 (&)。 我已将它们转义到 &,但我仍然从 API 返回错误,告诉我有不允许的字符。

我正在使用 header 如下:

setRequestHeader("Content-Type", "application/x-www-form-urlencoded")

我发布的 XML 看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<xml>
    <row>
        <column id="747">ALROS TRAVEL &amp; HOLIDAY CO.</column>
        <column id="748">73318</column>
        <column id="749"/>
        <column id="750"/>
    </row>
</xml>

根据我的测试,& 似乎是导致问题的原因。

我已经通过他们的测试工具测试了 XML,它工作正常,所以我认为请求 header 是问题所在。

我已经要求 API 开发人员检查他们从我的 POST 那里收到了什么,它似乎在 & 出现时就被切断了(即使它被转义了)。

我能得出的唯一结论是我使用了错误的请求 header,或者我应该以不同的方式发布 XML。

他们的测试工具是一个 HTML 表格,它使用 "multipart/form-data" 但我似乎无法使用 VBA 的表格,或者我收到 "No authentication information is detected" 消息。

有谁知道我可能做错了什么?

谢谢

谢谢大家,不管你信不信@dePatinkin 页面上的最后一条评论 link 给了我答案。我不得不使用 %26amp%3B