Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@alipay/faas-biz-web-sdk

Package Overview
Dependencies
Maintainers
3
Versions
38
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@alipay/faas-biz-web-sdk

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

  • 0.0.1-alpha.0
  • npm
  • Socket score

Version published
Weekly downloads
3
increased by200%
Maintainers
3
Weekly downloads
 
Created
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

Package last updated on 28 Feb 2024

Did you know?

Socket

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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc