我真的很困惑。我的国内航运工作正常。我的国际运费不起作用。
http://production.shippingapis.com/ShippingAPI.dll?API=InitRateV2&XML=
<IntlRateV2Request USERID="xxxxxxxxxxx">
<Package ID="1ST">
<Pounds>15</Pounds>
<Ounces>0</Ounces>
<Machinable>True</Machinable>
<MailType>Package</MailType>
<GXG>
<POBoxFlag>Y</POBoxFlag>
<GiftFlag>Y</GiftFlag>
</GXG>
<ValueOfContents>200</ValueOfContents>
<Country>Canada</Country>
<Container>RECTANGULAR</Container>
<Size>LARGE</Size>
<Width>10</Width>
<Length>15</Length>
<Height>10</Height>
<Girth>0</Girth>
<CommercialFlag>N</CommercialFlag>
</Package>
</IntlRateV2Request>
这给出了错误。
用户ID已更新为生产模式..
<Error>
<Number>80040b1a</Number>
<Description>API Authorization failure. InitRateV2 is not a valid API name for this protocol.</Description>
<Source>UspsCom::DoAuth</Source>
</Error>
答案 0 :(得分:0)
这只是猜测,但您的错误消息显示“InitRateV2不是此协议的有效API名称。”
查看您发送根标记的XML是<IntlRateV2Request USERID="xxxxxxxxxxx">
。
这可能是您代码中的拼写错误。你试过了吗?
`http://production.shippingapis.com/ShippingAPI.dll?API=IntlRateV2&XML=`?
换句话说,国际,而不是初始。