您的位置:首页 > 编程语言 > PHP开发

淘宝api登陆,下载最近2天订单的php源代码

2016-02-01 00:00 741 查看
http://wangblog.org/2011/06/api2php.html

最近在开发淘宝订单与本司erp对接的php程序,每一家的api都大同小异,不同之处在登陆也就是取得系统信任的session,之后就万事大吉了。

如何去淘宝申请api接口的,自己去http://open.taobao.com/折腾吧,我就不说了,申请还是比较简单的。记得要设置回调的页面,还有Secret和Key。

利用API取得用户名和ID做自己网站的OpenID也是不错的哦。

淘宝卖家现在日订单上百的不在少数,手工接订单,或者依赖淘宝或淘宝的第三方程序都不是正解,很多淘宝卖家不是只在淘宝折腾的。

废话少说,上代码,该代码由三个页面组成,该示例三个页面都在一个目录。

config.php,定义全局:

1
2header('Content-type: text/html; charset=utf-8');
3
4$aSecret = 'XXXXXXXX';
5$aKey = 'XXXXXXXX';
6$aLogin = 'http://container.open.taobao.com/container?appkey=[key]&encode=utf-8';
7$aUrl = 'http://gw.api.taobao.com/router/rest';
8?>
login.php,登陆:

01
02include('config.php');
03
04if(empty($_COOKIE['as'])){
05$aSession = '';
06echo('', $aKey, $aLogin).']Login');
07}else{
08$aSession = $_COOKIE['as'];
09echo('loged');
10}
11?>
callback.php,回调:

01
02include('config.php');
03
04if(!empty($_REQUEST['top_appkey'])
05&& !empty($_REQUEST['top_parameters'])
06&& !empty($_REQUEST['top_session'])
07&& !empty($_REQUEST['top_sign'])
08&& $_REQUEST['top_sign']==base64_encode(md5($_REQUEST['top_appkey'].$_REQUEST['top_parameters'].$_REQUEST['top_session'].$aSecret, true))){
09$aSession = $_REQUEST['top_session'];
10setcookie('as', $_REQUEST['top_session'], 0, '/');
11$aParameters=array();
12parse_str(base64_decode($_REQUEST['top_parameters']), $aParameters);
13echo('
');
14print_r($aParameters);
15echo('');
16}else{
17echo('
');
18print_r($_REQUEST);
19echo('');
20exit;
21}
22
23
24function get_api($msg){
25$d = @json_decode($msg);
26return $d;
27}
28
29function getCurl($url, $data=null, $header=null){
30$c = curl_init($url);
31curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
32curl_setopt($c, CURLOPT_HEADER, false);
33curl_setopt($c, CURLOPT_SSL_VERIFYPEER, false);
34if(!empty($data)){
35curl_setopt($c, CURLOPT_POST, 1);
36curl_setopt($c, CURLOPT_POSTFIELDS, $data);
37}
38if(!empty($header)){
39curl_setopt($c, CURLOPT_HTTPHEADER, $header);
40}
41$d['data'] = curl_exec($c);
42$d['header'] = curl_getinfo($c);
43curl_close($c);
44return $d;
45}
46
47$topurl=$aUrl;
48$tu['method']='taobao.trades.sold.get';
49$tu['session']=$aSession;
50$tu['timestamp']=date('Y-m-d H:i:s');
51$tu['format']='json';
52$tu['app_key']=$aKey;
53$tu['v']='2.0';
54$tu['sign_method']='md5';
55
56$tu['fields']='orders';
57$tu['start_created'] = date('Y-m-d H:i:s', strtotime('-2 day'));
58
59ksort($tu);
60
61$sign=$aSecret;
62foreach($tu as $k=>$v){
63$sign.=$k.$v;
64}
65$sign.=$aSecret;
66
67$tu['sign'] =strtoupper(md5($sign));
68$url=$topurl.'?'.http_build_query($tu, '', '&');
69$d=getCurl($url);
70echo('
');
71print_r(get_api($d['data']));
72echo('');
73?>
本代码需要php5,json,curl函数支持。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: