<?php
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/

define('IN_ECS', true);
require(dirname(__FILE__) . '/includes/init.php');
require(dirname(__FILE__) . '/includes/lib_code.php');
#天猫配置
define('TMALL_APPKEY','你的key');
define('TMALL_SECRETKEY','你的appsecret');
define('TMALL_REDIRECT_URI','http://172.18.2.142/getsessionkey.php');
define('TMALL_RETURN_URI','Location:http://172.18.2.142/index.php');

$code = $_GET["code"];

if (!empty($_GET['code'])) {
$url = 'https://oauth.taobao.com/token';
$postfields= array(
'grant_type'=>'authorization_code',
'client_id'=>TMALL_APPKEY,
'client_secret'=>TMALL_SECRETKEY,
'code'=>$_GET['code'],
'redirect_uri'=>TMALL_REDIRECT_URI
);
$post_data = '';
foreach($postfields as $key=>$value){
$post_data .="$key=".urlencode($value)."&";
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
//指定post数据
curl_setopt($ch, CURLOPT_POST, true);
//添加变量
curl_setopt($ch, CURLOPT_POSTFIELDS, substr($post_data,0,-1));
$output = curl_exec($ch);
$httpStatusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);

curl_close($ch);
$a=json_decode($output,true);

// $oOrder = &app::get('ome')->model('taobao_key');
$access_token = $a['access_token'];

//将token插入数据库
// $time = date('Y-m-d H:i:s',time());
// $sql = 'INSERT INTO dsc_taobao_sessionkey (`brand_id`,`time`, `access_token`) VALUES ("","'.$time.'","'.$access_token.'")';
// $db->query($sql);
$time = date('Y-m-d H:i:s',time());
$table = "dsc_taobao_sessionkey";
$field_values = array("time" =>$time, "access_token" =>$access_token);
$db->autoExecute($table, $field_values, "INSERT");

header(TMALL_RETURN_URI);
}else{
$url = "https://oauth.taobao.com/authorize";
$parames = array(
'client_id' =>TMALL_APPKEY,
'response_type' => 'code',
'redirect_uri'=>TMALL_REDIRECT_URI,
'state'=>'1'
);
$urlcode = '';
foreach ($parames as $key=>$value){
$urlcode .= "$key=".$value.'&';
}
$urlcode = substr($urlcode,0, strlen($urlcode)-1);

$authUrl = $url.'?'.$urlcode;
//echo $authUrl;die;
//header("Location:".$authUrl);
header("Location:".$authUrl);

}

我们访问 172.18.2.142/getsessionkey 时就获取了sessionkey ,将其存入数据库

获取淘宝sessionkey 实时保存的更多相关文章

  1. 自动获取淘宝API数据访问的SessionKey

    最近在忙与淘宝做对接的工作,总体感觉淘宝的api文档做的还不错,不仅有沙箱测试环境,而且对于每一个api都可以通过api测试工具生成想要的代码,你完全可以先在测试工具中测试之后再进行代码的编写,这样就 ...

  2. 获取淘宝客推广位id(adzone_id)

    在 获取淘宝联盟选品库的宝贝信息 这个接口中需要用到 推广位id,那边这个ID在哪找呢?1.进入阿里妈妈后台>推广管理>推广位管理,如下图: 2.在推广位管理 列表页 找到 PID,最后一 ...

  3. python 获取淘宝商品信息

    python cookie 获取淘宝商品信息 # //get_goods_from_taobao import requests import re import xlsxwriter cok='' ...

  4. python:爬虫获取淘宝/天猫的商品信息

    [需求]输入关键字,如书包,可以搜索出对应商品的信息,包括:商品标题.商品链接.价格范围:且最终的商品信息需要符合:包邮.价格差不会超过某数值 #coding=utf-8 ""&q ...

  5. 安卓sdk webview获取淘宝个人信息100项,源码。

    1.贴出主要代码.这个不是python,python只涉及了服务端对信息提取结果的接受.主体是java  + android + js.由于淘宝各模块都是二级子域名,不能只在一个页面完成所有请求,aj ...

  6. 淘宝开放平台php-sdk测试 获取淘宝商品信息(转)

    今天想使用淘宝开放平台的API获取商品详情,可是以前一直没使用过,看起来有点高深莫测,后然看开发入门,一步一步,还真有点感觉了,然后看示例,还真行了,记下来以后参考.其中遇到问题,后然解决了.因为我已 ...

  7. PYTHON -转载,获取淘宝数据01

    import requests import sys import random api = { 'number':[ 'https://acs.m.taobao.com/h5/mtop.taobao ...

  8. 用ajax获取淘宝关键字接口

    可定需要查看淘宝界面的结构,按F12查看网页,此时先清除一下网页中的数据,让Network制空,随后在输入框中输入新的内容,比如钱包,数据中会出现新的数据.点击及查看蓝色方框中的内容 点击之后,你可以 ...

  9. [PHP] 编写爬虫获取淘宝网上所有的商品分类以及关键属性 销售属性 非关键属性数据

    参考文章地址:https://blog.csdn.net/zhengzizhi/article/details/80716608 http://open.taobao.com/apitools/api ...

随机推荐

  1. java并发之停止线程

    停止一个线程意味着在任务处理完任务之前停掉正在做的操作,也就是放弃当前的操作.停止一个线程可以用Thread.stop()方法,但最好不要用它.虽然它确实可以停止一个正在运行的线程,但是这个方法是不安 ...

  2. NYIST 99 单词拼接

    单词拼接时间限制:3000 ms | 内存限制:65535 KB难度:5 描述给你一些单词,请你判断能否把它们首尾串起来串成一串.前一个单词的结尾应该与下一个单词的道字母相同.如 aloha dog ...

  3. n!最末尾非0数

    最小周期串:如果s是ss的周期串,那么ss就可以表示成几个周期的s,如果s是ss的最小周期串,那么s就是ss的周期串中最小的一个.例,ZgxZgxZgxZgx的最小周期串是Zgx.{很好理解} 给你一 ...

  4. Django(七)

    一.ModelForm操作及验证 1.class Meta:class Meta: #注意以下字段不能加逗号 model = models.UserInfo #这里的all代指所用的字段,也可以是一个 ...

  5. Android:ExpandableListView使用

    前言 眼下回到了工作岗位,第一件事情就是ExpandListView的优化.这里简单的用一个Demo介绍一下ExpandableListView的使用. 简介一下Demo实现的功能,主要是继承Base ...

  6. jquery非文本框复制

    function selectText(x) { if (document.selection) { var range = document.body.createTextRange();//ie ...

  7. PlayerPrefs存储Vector3等结构数据

     孙广东   2016.3.31 之前有网友询问这个问题, 当时我仅仅是 提供了一个思路, 使用json序列化.反序列化. 以下就写出两种(都是仅仅能变成字符串) 1.json的序列化.反序列化方 ...

  8. POJ2228 Naptime 环形DP

    题目大意:牛在第i个小时睡觉能够恢复U[i]点体力.睡觉时第一小时不恢复体力.一天的N小时连着下一天的1小时.求能够恢复体力的和的最大值. 定义DP[i][j][0]为前i个小时休息了j个小时,i小时 ...

  9. java 10000的阶乘

    package test; import java.math.BigInteger; import java.util.ArrayList; import java.util.List; import ...

  10. Triangle LOVE(拓扑排序)

    Triangle LOVE Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/65536K (Java/Other) Total ...