目标:串接虾皮订单、标签资讯,目前串接虾皮 OpenAPI 2.0 版本,串接手册
串接步骤:
前一篇已经建立好串接的帐号,接下来这个步骤是商店(卖场)授权
2.0 版本的商店授权有中文版手册
大致说明一下商店授权的步骤:
虾皮提供的授权用的固定 url
https://partner.shopeemobile.com/api/v2/shop/auth_partner
https://partner.test-stable.shopeemobile.com/api/v2/shop/auth_partner (测试区)
将 partner_id、redirect、sign、timestamp,这四个参数用 query 的方式加到固定 URL
参数 | 说明 | 范例 |
---|---|---|
partner_id | 建立 APP 时产生的,测试区跟正式区不能混用 | 012345678 |
redirect | 卖家点完授权後要重新导向的 URL | https://www.google.com/ |
sign | 透过 HMAC-SHA256 生成的加密签名(下面说明) | dlslioi2989d8a29809ldkjlkl209809fsdfs |
timestamp | 要跟带到 sign 里的一致,有效时间 5 分钟 | 1594897040 |
如何生成 sign
把 partner_id、api path(授权用的固定 url)、timestamp 拼成字串後,partner key 做为加密 Key,用 HMAC-SHA256 进行 hash 编码
以 php 示范:
$base_string=strval($partnerId.$path.$timestamp); // 要加密的字串 (partner_id、api path、timestamp)
$sign=hash_hmac('sha256',$base_string,$partnerKey,false); // HMAC-SHA256 编码
以正式区 URL 为例,最後的 url 会长这样:
https://partner.shopeemobile.com/api/v2/shop/auth_partner?partner_id=012345678&redirect=https://www.google.com/&sign=dlslioi2989d8a29809ldkjlkl209809fsdfs×tamp=1594897040
生成後就可以把这个 Url 提供给卖家授权,卖家授权完後会跳转到 redirect的网址,并会用 query 的方式把卖家的 code、shop_id 给你
以刚刚 redirect 的 url 是 https://www.google.com/ 为例,授权完後会跳转到下面网址
https://www.google.com/?code=xxxxxxx&shop_id=xxxxxx
如果有收到 code、shop_id 就是授权成功了喔,然後好像也会收到 email 的样子
code、shop_id 之後打 API 会需要用到的东西,如果不小心过期或是没记住到,就重新授权即可
一开始生成 sign 时是用php 的 hash 一直失败,後来才发现是要用 HMAC-SHA256,改成用 php 内建的 hash_hmac 就成功了~
下一篇再来介绍如何打 API
<<: 资安学习路上-picoCTF 解题(General) 1
前言 本文说明如何查询即时报价-Snapshots作业。 程序实作 Snapshots(快照):某个...
前面几天,我探索了 Lua 的变数型别、条件判断、回圈、标准函式库等 在这过程中,我已经多少看过函数...
昨天已经初步介绍几个简单常用的bootstrap语法, 今天来看看几个也是好用、比较详细或特殊的情况...
由wiki(https://zh.wikipedia.org/wiki/JSON) 可以知道JSON...
建立专案 1.点击新专案来建立一个新专案:D 2.选择要使用的样板,这次要做2DRPG雏形,因此选择...