buy-sdk 初始化 init

初始化 init

初始化并加载当前平台所需的适配层代码,初始化完成后返回 true or false

API


init(options: Options) =>  Promise<Env>;

Example

  • 同步 (推荐)

youzanBuy.init({

access_token:  '25caf98e8c59637630ae8bb2cadc99af',

expireTime:  1565337521226

}).then(result  =>  {

console.log(result.success);  // true

console.log(result.message);  // 初始化成功

}).catch(result  =>  {

console.log(result.success);  // false

console.log(result.message);  // token即将超时,请重新获取token

console.log(result.errorCode);  // 000001: 已经初始化 000002:access_token不存在 000003:token即将超时(token超时时间小于1分钟,则初始化失败,可重新获取token并且初始化)

});

  • 异步

const  initFunc  =  ()  =>  {

return  new  Promise((resolve,  reject)  =>  {

setTimeout(()  =>  {

resolve({access_token:  '68d184228ab0099691c5575b650023c9111', expireTime:  new  Date().getTime() +  1000000})

},  3000)

})

}

window.youzanBuy.init(initFunc).then((result)  =>  {

console.log(result.success);  // true

console.log(result.message);  // 初始化成功

}).catch(result  =>  {

console.log(result.success);  // false

console.log(result.message);  // token即将超时,请重新获取token

console.log(result.errorCode);  // 000001: 已经初始化 000002:access_token不存在 000003:token即将超时(token超时时间小于1分钟,则初始化失败,可重新获取token并且初始化)

});

Tips

  • init 只能调用一次

  • expireTime token 到期时间戳,获取 token 的时候会拿到到期时间,为了防止到期之后调用接口异常,需要传入过期时间,页面超过过期时间之后:

  • 同步:会提示用户刷新页面

  • 异步:会调用传入的异步方法(initFunc)更新 token 和时间戳

Options

| 参数 | 说明 | 类型 | 默认值 |

| access_token | 请求 token | string | `` |

| expireTime | 到期时间 (时间戳) | number | `` |