我正在尝试向Trading API发出GeteBayDetails
请求,以便可以使用lms在批量AddFixedPriceItem
调用中找到可接受的值字段。我正在使用curl执行HTTP Post请求。
因此,我将请求发送到以下URL
我使用的Headers是:
X-EBAY-API-COMPATIBILITY-LEVEL: 800
X-EBAY-API-SITEID: 3
X-EBAY-API-DEV-NAME: dev_key_here
X-EBAY-API-APP-NAME: App_key_here
X-EBAY-API-CERT-NAME: Cert_name_here
X-EBAY-API-CALL-NAME: GeteBayDetails
X-EBAY-API-DETAIL-LEVEL: 0
请求正文
<?xml version="1.0" encoding="utf-8"?>
<GeteBayDetailsRequest xmlns="urn:ebay:apis:eBLBaseComponents">
<RequestToken>My_Sandbox_user_token</RequestToken>
<RequestPassword>my_sandbox_user_password</RequestPassword>
<DetailName>ShippingServiceDetails</DetailName></GeteBayDetailsRequest>
响应
<?xml version="1.0" encoding="UTF-8"?>
<GeteBayDetailsResponse xmlns="urn:ebay:apis:eBLBaseComponents">
<Timestamp>2014-02-14T14:15:50.792Z</Timestamp>
<Ack>Failure</Ack>
<Errors><ShortMessage>No password and no token.</ShortMessage>
<LongMessage>No XML <RequestPassword> or <RequestToken> was found in XML Request.</LongMessage>
<ErrorCode>930</ErrorCode>
<SeverityCode>Error</SeverityCode>
<ErrorClassification>RequestError</ErrorClassification>
</Errors>
<Version>855</Version>
<Build>E855_INTL_API_16631620_R1</Build>
</GeteBayDetailsResponse>
我不明白为什么要RequestPassword
和RequestToken
。我将这些添加到了正文中,但是API似乎忽略了它们。
此外,API的文档似乎并没有建议我需要使用它们,我也不是在询问用户特定的细节。有人知道是怎么回事吗?欢迎提出任何建议。
谢谢
发布于 2014-02-14 23:16:12
您希望将沙箱令牌包含在RequesterCredentials XML标记内的eBayAuthToken标记中。所以就像这样
<RequesterCredentials>
<eBayAuthToken> Your token here </eBayAuthToken>
</RequesterCredentials>
这应该会解决你的问题。请确保移除不起作用的授权标签
发布于 2018-06-08 05:28:52
我相信您也可以省略
<RequesterCredentials>
<eBayAuthToken> Your token here </eBayAuthToken>
</RequesterCredentials>
从请求的正文/内容中删除,而不是将
"X-EBAY-API-IAF-TOKEN": "Y0uRAcCe$$T0k3n"
在请求标头中。
https://stackoverflow.com/questions/21782484
复制相似问题