我已经在该网站中查看了 PHP 代码中的许多示例,但他们每次都使用不同的技术,而且一点也不简单!我已经下载了ebaySession.php和keys.php文件。我已经成功整合了ebaysession类并与ebay取得了联系。但如何使用sendHttpRequest()方法让我感到困惑。没有解释如何获取用户帐户信息。
许多教程还表明,eBaySession类的构造函数将请求令牌作为最后一个参数,而我的文件将用户令牌作为第一个参数。与 eBay 的 API 文档存在许多不一致之处。我有一个带有令牌的测试用户帐户......
我也不明白的是,为什么eBaySession构造函数需要UserToken和callname,而在 eBay 的示例中,调用名称和 usertoken 包含在 XML 字符串中......
一个简单的问题,我在 eBay 文档中看不到明确的答案,如何进行简单的调用,然后检索变量中的结果/响应?我已经通过一个简单的搜索查询实现了这一点,但当它需要用户信息和身份验证时,似乎无法让它工作...此外,eBay 的搜索示例使用 URL 类型查询,例如
// Construct the findItemsByKeywords HTTP GET call
$apicall = "$endpoint?";
$apicall .= "OPERATION-NAME=findItemsByKeywords";
$apicall .= "&SERVICE-VERSION=$version";
$apicall .= "&SECURITY-APPNAME=$appid";
$apicall .= "&GLOBAL-ID=$globalid";
$apicall .= "&keywords=$safequery";
Run Code Online (Sandbox Code Playgroud)
然后另一个例子使用:
///Build the request Xml string
$requestXmlBody = '<?xml version="1.0" encoding="utf-8" ?>';
$requestXmlBody .= '<FetchTokenRequest xmlns="urn:ebay:apis:eBLBaseComponents">';
$requestXmlBody .= …Run Code Online (Sandbox Code Playgroud) 我有一个小问题,操纵当前的URL查询字符串,以在最后添加一个额外的参数.
例如,假设有一个产品的类别布局,URL将是:
index.php?category=3&type=5
Run Code Online (Sandbox Code Playgroud)
现在,在该页面上,我有一个表格或网格布局的链接.在我目前拥有的那些网址中:
<a href="index.php?<?php echo preg_replace($array,'',$_SERVER['QUERY_STRING']); ?>&layout=grid" ...
Run Code Online (Sandbox Code Playgroud)
然后,我也为表做同样的事情href.我的数组中也有:
$array = array ( '/&layout=table/', '/&layout=grid/' )
Run Code Online (Sandbox Code Playgroud)
这是正确的方法,还是有更好的方法来做到这一点?我问,因为没有preg_replace,它会在layout每次点击时继续添加相同的参数,所以它也会显示上一个参数,然后是下一个参数,然后是下一个..而不删除前面的layout参数.
任何有关这方面的见解将非常感激.
编辑:感谢下面的答案,我创建了一个小功能:
function buildQuery($key,$value) {
$params = $_GET;
$params[$key] = $value;
return http_build_query($params);
}
Run Code Online (Sandbox Code Playgroud)
那么它唯一的问题是:
<a href="index.php?<?php echo buildQuery('layout','grid'); ?>">grid</a>
Run Code Online (Sandbox Code Playgroud)
这可能看起来毫无意义,但我希望我的视图/模板文件没有额外的设置变量.我是一个干净的怪物.我甚至可能会返回'index.php?' 有它,所以我可以更懒,反正现在玩的东西:) ..