0.0.53 • Published 2 months ago

tcloudauth-sdk v0.0.53

Weekly downloads
-
License
ISC
Repository
-
Last release
2 months ago

概览

支付宝云开发身份认证服务 SDK。

使用方法

登录

import { Auth } from "tcloudauth-sdk";
// 或者在html中引用 <script src="dist/tcloudauth-sdk-bundle.js"></script>

const auth = new Auth({
  envId: "your-env-id",
  userPoolUid: "your-userpool-uid",
  persistence: "local",
  //environment: "hz",
  //useHttps: true,
});
const idpUserId = "your-username";
const password = "your-password";
auth
  .loginWithUsernameAndPassword(idpUserId, password)
  .then((loginState) => {
    if (loginState) {
      // 用户名密码登录成功,有登录态
    }
  });

UserPool 是在云开发创建出来的,会分配一个 Uid,一般一个应用使用一个 UserPool 即可,云开发也支持创建多个。 使用 idpUserId+password 来识别用户身份,idp 为 Identity Provider 的简写,当前只支持传统用户名密码方式,后续可支持三方登陆和自定义 IDP 登陆。 登录成功后会返回 AccessToken+RefreshToken,通过 persistence 配置这两个 token 的存储位置,默认为 session:

  • none,不持久化,当前浏览器窗口关闭或刷新登录态即丢失
  • session,持久化在 SessionStorage 中,浏览器关闭登录态丢失
  • local,持久化在 LocalStorage 中,浏览器关闭后登录态仍保存

envId: 必传,设置云开发的 envId userPoolUid: 必传,设置云开发 UserPool 的 UID environment: 环境,支持 UAT(uat)和生产(hz)环境,默认生产环境。 useHttps: 是否使用 HTTPS,默认为 true。

获取 HTTP 鉴权头部

auth.getAuthHeader().then((res) => {
  // { "x-faas-context-authorization": "......" }
});

header 的值为 AccessToken 值。

刷新 token

auth.refreshAccessToken().then((res) => {
  // access token 刷新成功
});

AccessToken 有效期为 30 分钟,RefreshToken 有效期为 1 天,在有效期内可通过 RefreshToken 获取新 AccessToken。

登出

auth.logout();

登出后登录态被清除。

三方登录

支付宝登录

const alipayAuthProvider = auth.alipayAuthProvider({
  appId: 'your-app-id',
  scope: 'auth_user'
});

//跳转到支付宝登录页面
alipayAuthProvider.loginWithRedirect();

//支付宝登录页面重定向回来后,使用重定向的返回值登录
alipayAuthProvider.getRedirectResult().then((loginState) => {
  if (loginState) {
    //登录成功,有登录态
  }
});

appId参数是商家实际使用的 appId, scope参数可不填。

0.0.51

2 months ago

0.0.52

2 months ago

0.0.53

2 months ago

0.0.50

3 months ago

0.0.49

3 months ago

0.0.48

3 months ago

0.0.47

3 months ago

0.0.44

4 months ago

0.0.45

4 months ago

0.0.46

4 months ago

0.0.40

4 months ago

0.0.41

4 months ago

0.0.42

4 months ago

0.0.43

4 months ago

0.0.37

4 months ago

0.0.38

4 months ago

0.0.39

4 months ago

0.0.31

4 months ago

0.0.32

4 months ago

0.0.33

4 months ago

0.0.34

4 months ago

0.0.35

4 months ago

0.0.36

4 months ago

0.0.30

4 months ago

0.0.26

4 months ago

0.0.27

4 months ago

0.0.28

4 months ago

0.0.29

4 months ago

0.0.23

4 months ago

0.0.24

4 months ago

0.0.25

4 months ago

0.0.22

5 months ago

0.0.21

5 months ago

0.0.20

5 months ago

0.0.17

5 months ago

0.0.18

5 months ago

0.0.19

5 months ago

0.0.16

5 months ago

0.0.15

5 months ago

0.0.14

5 months ago

0.0.13

5 months ago

0.0.11

5 months ago

0.0.10

5 months ago

0.0.9

6 months ago

0.0.7

6 months ago

0.0.6

6 months ago

0.0.5

6 months ago

0.0.4

6 months ago

0.0.3

6 months ago

0.0.2

6 months ago

0.0.1

6 months ago