Socket
Socket
Sign inDemoInstall

@alipay/faas-biz-web-sdk

Package Overview
Dependencies
1
Maintainers
3
Versions
10
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @alipay/faas-biz-web-sdk

支付宝云开发业务扩展web端 SDK


Version published
Maintainers
3
Created

Readme

Source

概览

支付宝云开发身份认证服务 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参数可不填。

FAQs

Last updated on 29 Feb 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc