我正在使用CJ API,我们需要根据类别检索所有产品目录.任何人使用此类概念请与我分享 更新的答案 我在Commission Junction上编写的用于测试REST API的小脚本. PHP代码: ?phpfunction ConnectToCJ()
我在Commission Junction上编写的用于测试REST API的小脚本.
PHP代码:
<?php function ConnectToCJ() { global $sort_order, $sort_by; // // Build REST URI for product search. Refer to // documentation for more request parameters. // $URI = 'https://product-search.api.cj.com/v2/product-search?'. 'website-id=<INSERT ID>'. // USE YOUR OWN. '&low-price=1'. '&records-per-page=25'. '&sort-order='. $sort_order . '&sort-by='. $sort_by . '&keywords='. rawurlencode($_GET['keywords']); $context = stream_context_create( array( 'http' => array( 'method' => 'GET', 'header' => 'Authorization: ' . // USE YOUR OWN. '0012345b5ffdb74cd401e1aade0f69cadca29c834781c0936'. 'b0b0836383b4e3e8dd7b406612347c3813bda24f8354dd649'. '6679031d8bc46f0dea1943a747ae0025/0093500ab1417918'. 'f621234038b1234e8c4b0b22ea9f9cbc1db37a592247676ae'. 'c528388bad7a06c9532c46fba2d0815e81e1234a9b25d9173'. '2f46f93123444dc1' ) )); $response = new SimpleXMLElement(file_get_contents($URI, false, $context)); return $response; } // A separate function to parse data. function FormatCJResponse($data) { global $sort_order; $ProductList = '<table border="0" cellspacing="2" cellpadding="2" style="width:800px; margin: auto 0px">'. '<tr style="font-weight:bold">'. '<td><a href="?keywords='. rawurlencode($_GET['keywords']) .'&sort-by=name&sort-order='. SetOrder('name') .'>Product Name</a></td>'. '<td>Advertiser Name</td>'. '<td><a href="?keywords='. rawurlencode($_GET['keywords']) .'&sort-by=price&sort-order='. SetOrder('price') .'>Price</a></td>'. '<td>Description</td>'. '<td>Image</td>'. '</tr>'; $attributes = $data->products->attributes(); if ($attributes->{'total-matched'} == '0') $ProductList .= '<tr><td colspan="5">No products found ...</td></tr>'; foreach ($data->products[0] as $product) { // Sanitize data. $price = number_format((float)$product->price, 2, '.', ' '); $image = '<img src="ImageHandler.php?fileName='. $product->{'image-url'} .'">'; // Add to list. $ProductList .= '<tr><td colspan="5"> </td></tr>'. '<tr>'. '<td valign="top">'. $product->name .'</td>'. '<td valign="top">'. $product->{'advertiser-name'} .'</td>'. '<td valign="top">'. $price .' '. $product->currency .'</td>'. '<td valign="top">'. $product->description .'</td>'. '<td valign="top">'. $image .'</td>'. '</tr>'; } $ProductList .= '</table>'; return $ProductList; } // Sorts out individual sorting. function SetOrder($param) { global $sort_by, $sort_order; if ($sort_by == $param && $sort_order == 'asc') { $order = 'desc" title="Sort by descending order"'; } else { $order = 'asc" title="Sort by ascending order"'; } return $order; } if (isset($_GET['keywords'])) { if ($_GET['keywords'] != '') { // Sort order. if (!isset($_GET['sort-order'])) { $sort_order = 'asc'; } else { switch ($_GET['sort-order']) { case 'asc': $sort_order = 'asc'; break; case 'desc': $sort_order = 'desc'; break; default: $sort_order = 'asc'; } } // Sort by if (!isset($_GET['sort-by'])) $sort_by = 'name'; else $sort_by = $_GET['sort-by']; // Connect to CJ and get formatted results. $ProductList = FormatCJResponse(ConnectToCJ()); } } ?>
只需检查并打印$ProductList中的内容: