我正在尝试从用户的ebay帐户中获取一些产品,但是当我运行代码时,我只收到一个错误"您的应用程序遇到错误。此请求缺少必需的输入标记"或"."
<?php
function print_d($array){ echo "<pre>n"; print_r($array); echo "</pre>n";}
$mytoken = "************mytoken************";
$devId = "************mydevId************";
$appId = "************myappId************";
$certId = "************mycertId************";
$wsdl_url = 'http://developer.ebay.com/webservices/latest/ebaySvc.wsdl';
$apiCall = "GetSellerList";
$credentials = array('AppId' => $appId, 'DevID' => $devId, 'AuthCert' => $certId);
$client = new SOAPClient($wsdl_url, array('trace' => 1, 'exceptions' => 0, 'location' => "https://api.ebay.com/wsapi?callname=$apiCall&appid=$appId&siteid=0&version=803&Routing=new"));
$eBayAuth = array('eBayAuthToken' => new SoapVar($mytoken, XSD_STRING, NULL, NULL, NULL, 'urn:ebay:apis:eBLBaseComponents'),
'Credentials' => new SoapVar ($credentials, SOAP_ENC_OBJECT, NULL, NULL, NULL, 'urn:ebay:apis:eBLBaseComponents'));
$header_body = new SoapVar($eBayAuth, SOAP_ENC_OBJECT);
$header = array(new SOAPHeader('urn:ebay:apis:eBLBaseComponents', 'RequesterCredentials', $header_body));
//set the API call parameters
$params = array('UserID'=>'**sellerid**','DetailLevel'=>'ReturnAll','WarningLevel'=>'High','IncludeWatchCount'=>'true','Pagination'=>array('EntriesPerPage'=>'20','PageNumber'=>'1'),'Version' => '803', 'CreateTimeFrom'=>'2019-07-01T01:01:02.768Z', 'CreateTimeTo'=>'2019-08-22T01:01:02.768Z');
$request = $client->__soapCall($apiCall, array($params), NULL, $header); //make the actual API call
print_d($request);
?>
这就是我得到的:
stdClass Object
(
[Timestamp] => 2019-08-23T05:54:30.954Z
[Ack] => Failure
[Errors] => stdClass Object
(
[ShortMessage] => Your application encountered an error.
[LongMessage] => Your application encountered an error. This request is missing required input tag " or ".
[ErrorCode] => 34
[SeverityCode] => Error
[ErrorParameters] => stdClass Object
(
[Value] => or
[ParamID] => 0
)
[ErrorClassification] => RequestError
)
[Version] => 1119
[Build] => E1119_CORE_APISELLING_19039141_R1
)```
谢谢我只使用邮递员,我发现缺少StartTimeFrom和StartTimeTo
。我在德语中Your application encountered an error. This request is missing required input tag ""
或In der Anwendung ist ein Fehler aufgetreten. In dieser Anforderung fehlt der erforderliche Eingabetag ""
遇到了相同的错误。
首先,如果您在浏览器中发出请求(99%确定(,则必须查看浏览器源代码HTML代码(CTRL + U(,将显示隐藏在"漂亮"浏览器视图中的标签信息。
就我而言,我错过了eBay开发人员APIAddItem
方法Item.PrimaryCategory.CategoryID
标签,该方法在文档中不是必需的,但在实际中是必需的。