0

卡在一些糟糕的文档之后。尝试连接到供应商 API 以将订单拉入我自己的数据库。供应商只有一行和示例(甚至没有我仍在尝试获取的正确网址)。

Documentation = XML String 需要存储在一个名为 REQUEST 的表单字段中,并且应该通过 HTTP POST 方法发送到我们的服务器。本文档中描述的所有方法都必须遵循此标准。

示例 = GET ORDERS 方法 XML 格式:

<?xml version="1.0" encoding="utf-8"?>
<OrderXML>
 <Method>GET ORDERS</Method>
 <Authentication>
 <Username>Your Username</Username>
 <Password>Your Password</Password>
 </Authentication>
</OrderXML>

在 Postman 和 PowerShell 中尝试过,只是无法弄清楚如何获取“请求”表单。我的代码返回了错误的请求,我不确定是由于 URL 还是没有正确编码“请求”表单。

$URI = "https://orders.website.com/webservice/default.cfm"
[xml]$requestXML = @'
    REQUEST=
    <OrderXML>
    <Method>GET ORDERS</Method>
    <TestMode>YES</TestMode>
    <Authentication>
    <Username>USERNAME</Username>
    <Password>PASSWORD</Password>
    </Authentication>
    </OrderXML>
'@
Invoke-WebRequest -Uri $URI -Method Post -Body $requestXML

谢谢

4

1 回答 1

0

所以终于在邮递员中弄清楚了。使用表单控件而不是原始 XML。Key 是必需的“REQUEST”,Value 是 XML。

于 2020-04-02T20:40:10.083 回答