文件说明
- /app/Component/Ali/Sdk -- sdk文件夹
- /app/Component/Ali/AliApi.php -- 1688各接口封装类
- /app/Component/Ali/TransferController.php -- 1688各接口回调控制器
- /routes/api.php -- 路由文件
1) AliApi.php
调用方法
实例化 AliApi
时需要传入参数 , 参数就是将要调用接口的名称,new AliApi('ProductInfo')
.
参数列表
- ProductInfo -- 跨境场景获取商品详情
- ProductList -- 跨境场景获取商品列表
- ProductListPushed -- 跨境场景下将商品加入铺货列表
- ProductListPushed -- 同步铺货结果
- SubaccountAuthAdd -- 批量添加子账号授权
- SubaccountAuthCancel -- 批量取消子账号授权
- SubaccountAuthList -- 批量查询子账号授权
返回参数
错误返回
{
"info" : "error",
"errorCode" : "gw.APIACLDecline",
"errorMessage" : "您的AppKey暂无权限调用当前API"
}
正确返回
其他方法
1.function getRefreshToken($redirect_url){}
用code
换取RefreshToken
,在执行此函数之前需要先执行授权得到code
, 此方法已封装好 , 在new AliApi()
的时候已经自动调用 , 并存入Cache
中 .
在有code
的情况下直接执行此函数可以获取最新的refreshToken .
返回值 :
'1066e1d1-0ed5-4d6c-8f1e-042e49a6f4b1'
2.function getAndSaveAppCode($redirect_url)
直接执行此函数返回商户授权页面链接
返回值 :
https://auth.1688.com/oauth/authorize?client_id=51231&site=1688&redirect_uri=http://example.com'
2) TransferController.php
-
function test(){}
public function test () { $ali = new AliApi('ProductPushResult'); //传入参数名,实例化接口类 if($ali->auth == false){ return $this->authorize (); } //这一段写,判断是否授权,有则直接执行,无则前往授权 $a = $ali->productPushResultApi(['123456']); //调用接口函数 return; }
-
function code(){}
授权页面回调控制器 , 授权后会跳转该控制器地址 , 把code存入缓存 , 有效期2分钟 , 同时获取refreshToken
. -
function authorize(){}
访问此控制器重定向到授权页面 -
function notify(){}
消息订阅 , 接收订阅消息控制器 , 具体请查看此控制器
3) api.php
- '1688/test' -- 接口调用模板路由
- '1688/code' -- 授权回调页面路由
- '1688/auth' -- 重定向至授权页面路由
- '1688/notify' -- 订阅消息接收路由