php-jos-sdk

v2版适用php5.4以上,非php5.4有使用说明

目录结构

/JosSdk.php自动加载助手类(当前就自动加载几个类,完全可以不用此助手)

/stream主动通知实现,通过pub/sub模式重新设计了处理机制,应对大流量场景更出色

/jos/JosClient.phpapi客户端

/jos/JosRequest.php具体一个api的封装

/jos/Jos.php api客户端的封装,添加了code换token,组装授权网址等常用方法

/jos/exception/JosSdkException.php api客户端异常类

/jos/exception/JosException.php api返回错误异常

错误请反馈

QQ:347513004

快速使用

通过实例JosRequest来组装请求参数,把JosRequest传递给JosClient的execute方法来请求api。api返回了错误会抛出JosException异常,如果sdk客户端出错会抛出JosSdkException异常。

//如果用JosSdk.php来加载或者composer来加载则可以注释掉这里

require_once 'jos/JosClient.php';

require_once 'jos/JosRequest.php';

require_once 'jos/exception/JosException.php';

require_once 'jos/exception/JosSdkException.php';

//组装请求参数

$req=new JosRequest('360buy.order.search');

$req->order_state='WAIT_SELLER_STOCK_OUT';

$req->page=1;

$req->page_size=20;

//实例化客户端

$client=new JosClient();

$client->appkey='XXXXXXXXXXXXXXXX';

$client->secretKey='XXXXXXXXXXXXXXXXX';

//商家授权access_token,下面有如何获取token示例

$accessToken='XXXXXXXXXXXXX';

//发送请求返回数据

$resp=$client->execute($req,$accessToken);

print_r($resp);

通过Jos.php来实现授权登录,auth code换access_token流程

//如果用JosSdk.php来加载或者composer来加载则可以注释掉这里

require_once 'jos/JosClient.php';

require_once 'jos/JosRequest.php';

require_once 'jos/exception/JosException.php';

require_once 'jos/exception/JosSdkException.php';

require_once 'jos/Jos.php';

//实例化客户端并返回登录授权网址

$client=new Jos();

$client->appkey='XXXXXXXXXXXXXXXX';

$client->secretKey='XXXXXXXXXXXXXXXXX';

$client->redirectUri='http://localhost/test.php';

$authUrl=$client->getAuthorizeUrl();

//echo $authUrl;exit();

//授权完成,传回auth code

if(isset($_GET['code'])){

$token=$client->fetchAccessToken($code);

print_r($token);

}

php5.4以下使用

sdk最大限度做了兼容,通过简单修改就可以正常使用

json_decode在5.4以下不能很好处理big int,京东一些数字会非常大造成异常,通过修改或者继承JosClient.jsonDecode方法可以更换到你的处理方式

如果没有安装curl则可以修改JosClient.curl方法来切换到自己的方法上,如通过file_get_contents来发送get或post请求

源码解读

示例中已经有简单介绍,可以自己看下引入的几个类

java的sdk是一个api对应一个类,php的sdk开始也按照这个模式来实现。这样京东新加了接口或者有变动sdk也跟着做修改,所以现在放弃了这个模式,通过向JosRequest类传入api名,给类属性赋值来组装参数

如以前的示例:

$req=new OrderSearchRequest();

$req->setPage(1);

现在的:

$req=new JosRequest('360buy.order.search');

$req->page=1;

这样直接看着文档就能很容易组装出api请求,简单直接省内存

常见问题

用啥问题直接加qq交流吧347513004

京东api接口php sdk,GitHub - ifwrong/jos-php-sdk: 京东php版本开放平台SDK相关推荐

  1. 京东推荐商品列表API接口-(item_recommend-获取推荐商品列表API接口),京东API接口

    一.京东推荐商品列表API接口-(item_recommend-获取推荐商品列表API接口),京东API接口代码对接如下: 1.请求参数: 名称 类型 必须 描述 key String 是 调用key ...

  2. 京东商品评论API接口-(item_review-获得JD商品评论API接口),京东API接口

    一.京东商品评论API接口-(item_review-获得JD商品评论API接口),京东API接口代码对接如下: 1.公共参数 名称 类型 必须 描述 key String 是 调用key(必须以GE ...

  3. 京东店铺的所有商品API接口-(item_search_shop-获得店铺的所有商品接口),京东API接口

    一.京东店铺的所有商品API接口-(item_search_shop-获得店铺的所有商品接口),京东API接口代码如下: 1.公共参数 名称 类型 必须 描述 key String 是 调用key(必 ...

  4. 京东商品详情APP原数据API接口-(item_get_app-获得JD商品详情原数据API接口),京东API接口

    一.京东商品详情APP原数据API接口-(item_get_app-获得JD商品详情原数据API接口),京东API接口代码如下: 1.公共参数 名称 类型 必须 描述 key String 是 调用k ...

  5. 京东API接口,Onebound数据

    一.京东API接口 详情界面 item_get获得JD商品详情 item_search按关键字搜索商品 item_search_img按图搜索京东商品(拍立淘) item_search_shop获得店 ...

  6. 抖音 -抖店开放平台 SDK 实现及项目工程

    抖音 - 抖店开放平台 SDK 抖音 - 抖店开放平台:https://op.jinritemai.com/ 该 SDK 已实现 API 接口调用和消息推送验证解析 项目地址 github: gite ...

  7. 腾讯AI开放平台 SDK

    腾讯AI开放平台 SDK Tencent AI open platform sdk Special thanks to the generous sponsorship by: Requirement ...

  8. 美团开放平台SDK自动生成技术与实践

    美团开放平台为整个美团提供了20+业务场景的开放API,为了使开发者能够快速且安全的接入美团开放平台,美团开放平台提供了多种语言的SDK来提高开发者的接入效率.本文介绍了美团开放平台如何自动生成SDK ...

  9. 微博开放平台SDK使用

    微博开放平台SDK使用 1.注册为开发者 使用新浪微博帐号在http://open.weibo.com/注册开发者,只要完善开发者信息,并完成邮箱验证就可以成为开发者. 2.创建应用 选择要创建的应用 ...

最新文章

  1. 选项卡 都是显示在页面底部
  2. acf滞后数必须为正整数。_【知识点】“勾股定理”的必考点,必须掌握!
  3. 天哪!原来PWM这么简单
  4. 使用云原生应用和开源技术的创新攻略
  5. MyBatis中in的使用
  6. 因为我想在博客园长呆,所以给博客园提一些改进建议
  7. Liferay CE 6.1安装教程
  8. Beta版本(有更改)
  9. mysql 时间chuo格式化_mysql格式化日期
  10. python中监控错误的语句_Python学习_07_错误、异常
  11. 我常用的crontab命令
  12. 代码审计工具学习之RISP(安装以及初步操作)
  13. android车载蓝牙开发,车载蓝牙开发二
  14. php网页找注入点,另类找注入点技巧_91Ri.org
  15. POJ-1067 取石子游戏(威佐夫博弈)
  16. 如何做好高端的总结汇报PPT呢?
  17. 什么软件可以测试睡眠质量心率,2020测睡眠质量的app排行榜-推荐10款有趣又有效的睡眠APP...
  18. Altium_Designer17-PCB-如何重新定义板子大小
  19. 【JetBrain】JetBrain系列软件设置背景图
  20. 程序设计基础—什么是逻辑与、或、非关系?

热门文章

  1. 交换机VSU相关显示命令
  2. 【数值模型环境搭建】Intel编译器安装
  3. 韩博士一键重装win7系统的详细教程
  4. 博图V15与RobotStudio通讯仿真
  5. 手绘 v.s. 码绘(1.2 实践报告)
  6. 01-HTML 和CSS
  7. Windows Terminal 终极美
  8. Tensorflow2.0 U-Net医学图像分割(胸部X光图像分割)
  9. 数学建模的经典问题总结(一)
  10. 一级减速器装配图和零件图——课程设计