//设置编码格式header("Content-type: text/html; charset=utf-8");//用mysqli来连接数据库(服务器,用户名,密码,数据库名字)$mysqli=new mysqli("127.0.0.1","root","root","amz_order");$mysqli -> set_charset('utf8');if(mysqli_connect_errno()){echo "连接数据库失败:".mysqli_connect_error();$mysqli=null;exit;}echo "连接数据库成功!<br/>";date_default_timezone_set('PRC');$params = array('AWSAccessKeyId' => "YOU_AWSAccessKeyId",'Action' => "ListOrders",'SellerId' => "SellserId",'SignatureMethod' => "HmacSHA256",'SignatureVersion' => "2",'Timestamp'=> gmdate("Y-m-d\TH:i:s\Z", time()),'Version'=> "2013-09-01",'CreatedAfter'=> gmdate("Y-m-d\TH:i:s\Z", strtotime("-2 day")),'CreatedBefore'=> gmdate("Y-m-d\TH:i:s\Z", strtotime("-1 day")),'MarketplaceId.Id.1' => "ATVPDKIKX0DER",);$url_parts = array();foreach(array_keys($params) as $key)$url_parts[] = $key . "=" . str_replace('%7E', '~', rawurlencode($params[$key]));sort($url_parts);$url_string = implode("&", $url_parts);$string_to_sign = "GET\nmws.amazonservices.com\n/Orders/2013-09-01\n" . $url_string;$signature = hash_hmac("sha256", $string_to_sign, "You Secret Key", TRUE);$signature = urlencode(base64_encode($signature));$url = "https://mws.amazonservices.com/Orders/2013-09-01" . '?' . $url_string . "&Signature=" . $signature;$ch = curl_init();$header[] = "Content-type: text/xml";curl_setopt($ch, CURLOPT_URL,$url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_TIMEOUT, 15);curl_setopt($ch, CURLOPT_HTTPHEADER,$header);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);curl_setopt($ch, CURLOPT_HEADER, 0);$response = curl_exec($ch);$parsed_xml = simplexml_load_string($response);print_r($parsed_xml);$parsed_json = json_decode(json_encode($parsed_xml),true);$data = $parsed_json['ListOrdersResult']['Orders']['Order'];$sql = '';for($i = 0;$i<count($data);$i++){$LatestShipDate=$data[$i]['LatestShipDate'];$OrderType=$data[$i]['OrderType'];$PurchaseDate=$data[$i]['PurchaseDate'];$AmazonOrderId=$data[$i]['AmazonOrderId'];$BuyerEmail=$data[$i]['BuyerEmail'];$IsReplacementOrder=$data[$i]['IsReplacementOrder'];$LastUpdateDate=$data[$i]['LastUpdateDate'];$NumberOfItemsShipped=$data[$i]['NumberOfItemsShipped'];$ShipServiceLevel=$data[$i]['ShipServiceLevel'];$OrderStatus=$data[$i]['OrderStatus'];$SalesChannel=$data[$i]['SalesChannel'];$IsBusinessOrder=$data[$i]['IsBusinessOrder'];$NumberOfItemsUnshipped=$data[$i]['NumberOfItemsUnshipped'];$PaymentMethodDetail=$data[$i]['PaymentMethodDetails']['PaymentMethodDetail'];$BuyerName=$data[$i]['BuyerName'];$CurrencyCode=$data[$i]['OrderTotal']['CurrencyCode'];$Amount=$data[$i]['OrderTotal']['Amount'];$IsPremiumOrder=$data[$i]['IsPremiumOrder'];$EarliestShipDate=$data[$i]['EarliestShipDate'];$MarketplaceId=$data[$i]['MarketplaceId'];$FulfillmentChannel=$data[$i]['FulfillmentChannel'];$PaymentMethod=$data[$i]['PaymentMethod'];$City=$data[$i]['ShippingAddress']['City'];$PostalCode=$data[$i]['ShippingAddress']['PostalCode'];$StateOrRegion=$data[$i]['ShippingAddress']['StateOrRegion'];$CountryCode=$data[$i]['ShippingAddress']['CountryCode'];$Name=$data[$i]['ShippingAddress']['Name'];$AddressLine1=$data[$i]['ShippingAddress']['AddressLine1'];$AddressLine2=$data[$i]['ShippingAddress']['AddressLine1'];$IsPrime=$data[$i]['IsPrime'];$ShipmentServiceLevelCategory=$data[$i]['ShipmentServiceLevelCategory'];$SellerOrderId=$data[$i]['SellerOrderId'];$CreatedBefore=$parsed_json['ListOrdersResult']['CreatedBefore'];$RequestId=$parsed_json['ResponseMetadata']['RequestId'];$sql = "insert into amz_orders VALUE ('$LatestShipDate','$OrderType','$PurchaseDate','$AmazonOrderId','$BuyerEmail','$IsReplacementOrder','$LastUpdateDate','$NumberOfItemsShipped','$ShipServiceLevel','$OrderStatus','$SalesChannel','$IsBusinessOrder','$NumberOfItemsUnshipped','$PaymentMethodDetail','$BuyerName','$CurrencyCode','$Amount','$IsPremiumOrder','$EarliestShipDate','$MarketplaceId','$FulfillmentChannel','$PaymentMethod','$City','$PostalCode','$StateOrRegion','$CountryCode','$Name','$AddressLine1','$AddressLine2','$IsPrime','$ShipmentServiceLevelCategory','$SellerOrderId','$CreatedBefore','$RequestId')";$mysqli->query($sql);}echo "插入成功成功!<br/>";$mysqli->close();
'CreatedAfter'=> gmdate("Y-m-d\TH:i:s\Z", strtotime("-2 day")),
'CreatedBefore'=> gmdate("Y-m-d\TH:i:s\Z", strtotime("-1 day")),

表示查询的前天到昨天以内的数据。

$parsed_xml = simplexml_load_string($response);
$parsed_json = json_decode(json_encode($parsed_xml),true);

先解析返回的xml数据,再将xml数据转换成数组

注意:

日期格式必须是ISO8601编码格式,可以用 gmdate ​实现

gmdate("Y-m-d\TH:i:s\Z", time())

signature  ​签名生成方式是:

  $url_parts = array();foreach(array_keys($params) as $key)$url_parts[] = $key . "=" . str_replace('%7E', '~', rawurlencode($params[$key]));sort($url_parts);$url_string = implode("&", $url_parts);$string_to_sign = "GET\nmws.amazonservices.com\n/Orders/2013-09-01\n" . $url_string;$signature = hash_hmac("sha256", $string_to_sign, "You Secret Key", TRUE);$signature = urlencode(base64_encode($signature));

XML数据

<?xml version="1.0"?>
<ListOrdersResponse xmlns="https://mws.amazonservices.com/Orders/2013-09-01"><ListOrdersResult><Orders><Order><LatestShipDate>2018-03-23T06:59:59Z</LatestShipDate><OrderType>StandardOrder</OrderType><PurchaseDate>2018-03-22T00:42:24Z</PurchaseDate><AmazonOrderId>112-0943667-2692252</AmazonOrderId><BuyerEmail>zx1dy8wcrktwh34@marketplace.amazon.com</BuyerEmail><IsReplacementOrder>false</IsReplacementOrder><LastUpdateDate>2018-03-23T05:01:09Z</LastUpdateDate><NumberOfItemsShipped>1</NumberOfItemsShipped><ShipServiceLevel>SecondDay</ShipServiceLevel><OrderStatus>Shipped</OrderStatus><SalesChannel>Amazon.com</SalesChannel><IsBusinessOrder>false</IsBusinessOrder><NumberOfItemsUnshipped>0</NumberOfItemsUnshipped><PaymentMethodDetails><PaymentMethodDetail>Standard</PaymentMethodDetail></PaymentMethodDetails><BuyerName>Olga</BuyerName><OrderTotal><CurrencyCode>USD</CurrencyCode><Amount>14.99</Amount></OrderTotal><IsPremiumOrder>false</IsPremiumOrder><EarliestShipDate>2018-03-23T06:59:59Z</EarliestShipDate><MarketplaceId>ATVPDKIKX0DER</MarketplaceId><FulfillmentChannel>AFN</FulfillmentChannel><PaymentMethod>Other</PaymentMethod><ShippingAddress><City>SACRAMENTO</City><PostalCode>95834-1469</PostalCode><StateOrRegion>CA</StateOrRegion><CountryCode>US</CountryCode><Name>Olga Snezhko</Name><AddressLine1>10 RIO CAMINO CT</AddressLine1></ShippingAddress><IsPrime>false</IsPrime><ShipmentServiceLevelCategory>SecondDay</ShipmentServiceLevelCategory><SellerOrderId>112-0943667-2692252</SellerOrderId></Order></Orders><CreatedBefore>2018-03-22T09:18:16Z</CreatedBefore></ListOrdersResult><ResponseMetadata><RequestId>c6cfe8cb-6367-48fd-8e36-f1643f55325e</RequestId></ResponseMetadata>
</ListOrdersResponse>
转载出处 https://www.bobcoder.cc/index/Post/detail/id/142.html

亚马逊查询订单listorders方法相关推荐

  1. 亚马逊训练alexa的方法_Alexa对话是AI驱动的对话界面新方法

    亚马逊训练alexa的方法 介绍 (Introduction) Looking at the chatbot development tools and environments currently ...

  2. 亚马逊s3的使用方法_使用jclouds库在Amazon S3上上传

    亚马逊s3的使用方法 在Java世界中,有几种很好的方法可以将内容上传到S3存储桶-在本文中,我们将研究jclouds库为此提供的功能. 要使用jclouds –特别是本文中讨论的API,应将此简单的 ...

  3. 亚马逊测评的获得方法及测评环境系统介绍,一次诊断全部解决。

    我想大多数卖家应该都是知道亚马逊测评能够快速帮助自己的产品添加评论,获取排名,打造爆款.但是有很多卖家都不清楚亚马逊如何做?获得方法有哪些?那么下面就一起来了解一下! ​亚马逊测评如何做? 第一:测评 ...

  4. 亚马逊测评如何做?亚马逊测评的获得方法?

    我想大多数卖家应该都是知道亚马逊测评能够快速帮助自己的产品添加评论,获取排名,打造爆款.但是有很多卖家都不清楚亚马逊如何做?获得方法有哪些?那么下面就一起来了解一下! 4102.png 亚马逊测评如何 ...

  5. 亚马逊刷好评的方法有哪些?

    新上线的产品免不了要刷几单好评,吸引新客户的购买,还可以优化listing.不过最近亚马逊的动作很多,一些刷单群,微信群都被端了,还有很多卖家的评论直接被亚马逊删掉了.现在很多卖家叫苦不迭,不知道还有 ...

  6. 亚马逊查询关键词排名的工具_查询关键词排名收录的作用与操作

    经测试,清除Cookies后,排名查询工具在火狐浏览器和谷歌浏览器的排名查询结果中:自然排名是一样的,广告排名会差0-5位,所以火狐插件的排名也是可靠的,最好先清除Cookies,再设置亚马逊邮编,再 ...

  7. 亚马逊新品推广的方法

    1.产品测评 很多人总认为进行测评只是单纯的带来好评.其实产品测评主要是给自己的新产品造势,其次为了初期能有好评,然后是为了发现产品在客户眼中的缺陷和不足或者需要改进的东西,一般建议在产品前期可以把你 ...

  8. 提高亚马逊产品排名的方法

    想要提高亚马逊产品排名,可以使用以下四种方法: 1.做关键词优化 关键词优化的第一步是在做新产品之前.通过亚马逊的搜索栏,你可以试着销售类似的产品.研究竞争对手和其他相关渠道进行关键词选择,分类和收集 ...

  9. 五个亚马逊卖家关键词优化方法

    一.关键词的搜索量 亚马逊并不显示关键词的搜索量,卖家想要获取准确的关键词搜索量数据,可以通过第三方的关键词查找功能直接抓取亚马逊后台的数据进行汇总. 卖家也可以随意抽取过去一个月的谷歌趋势的数据,卖 ...

  10. mysql获取亚马逊数据_亚马逊(MWS)订单查询-ListOrders查询返回xml数据保存数据库——PHP...

    //设置编码格式 header("Content-type: text/html; charset=utf-8"); //用mysqli来连接数据库(服务器,用户名,密码,数据库名 ...

最新文章

  1. 台积电2纳米获得重大突破
  2. AngularJs 基础教程​ —— Select(选择框)
  3. 第一阶段个人总结03
  4. Rsync + Sersync 实现数据增量同步
  5. spring项目概念-IOCDI
  6. [MySQL]关于amd.dll后门病毒入侵3306端口的临时解决方案
  7. Scale-Adaptive Neural Dense Features: Learning via Hierarchical Context Aggregation
  8. 轻量级web api_哈尔滨Web前端基础学习规划
  9. mysql dbutil_DBUtil详解
  10. 微电网逆变器VF控制simulink仿真模型。 采用解耦的电压电流双闭环控制, 输出电压电流波形质量良好
  11. 如何清空c盘只剩系统_怎么清空c盘只保留系统文件 你值得一看的技巧
  12. JAVA数据库宾馆住宿系统_java+数据库 宾馆客房管理系统
  13. android adb 环境变量配置,Windows如何配置Android的ADB环境变量
  14. vs2019安装时,一直卡在正在提取文件
  15. 和与余数的和同余理解_同余及同余特性
  16. app上架应用宝流程
  17. 计算机课程综合实训自我鉴定,计算机教学实习的自我鉴定范文
  18. JFinal+Quartz动态任务调度控制台
  19. python实现小程序_python实现小程序
  20. 180724 安卓-SSLPinning及反制

热门文章

  1. Moonstarter IDO 一步一步的操作
  2. oracle 产品宣传片,史上最牛宣传片!河南的美已惊艳了世界!
  3. 多个模型融合训练神经网络-devise模型的实现
  4. 微信5.0打飞机怎么取得高分?
  5. python使用Speech_Recognition实现普通话识别(一)
  6. ubuntu 下安装 face_recognition
  7. 拉线式位移传感器的原理
  8. 银行家算法02--申请资源 (操作系统)
  9. vue面试五之vue修饰符中 .lazy 等用法、Vue v2.4中新增的$attrs及$listeners属性的使用、v-once 的使用场景、vue组件里的定时器该如何销毁、vue海量数据优化等
  10. 位运算实现加减乘除运算——超详细C语言描述