前言
目标:串接虾皮订单、标籤资讯,目前串接虾皮 OpenAPI 2.0 版本,串接手册
串接步骤:
商店授权
前一篇已经建立好串接的帐号,接下来这个步骤是商店(卖场)授权
2.0 版本的商店授权有中文版手册
大致说明一下商店授权的步骤:
建立一个授权 url (5min 有效)提供 授权 url 给卖家卖家点了 url 后会先登入虾皮的帐号 (3min 内要输入)登入后会有一个授权页面点击授权按钮后就会正式授权跳转连结后获得一组 code 、shop_id建立授权 URL
虾皮提供的授权用的固定 url
https://partner.shopeemobile.com/api/v2/shop/auth_partnerhttps://partner.test-stable.shopeemobile.com/api/v2/shop/auth_partner (测试区)
将 partner_id、redirect、sign、timestamp,这四个参数用 query 的方式加到固定 URL
如何生成 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