🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

teamsauth

Package Overview
Dependencies
Maintainers
3
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

teamsauth

Client SDK for MODS

latest
Source
npmnpm
Version
0.1.0
Version published
Weekly downloads
11
450%
Maintainers
3
Weekly downloads
 
Created
Source

Teams authentication library

Notice:

MODS SDK

Build

Run npm run build to build the library

Usage

Add mods.js file to the html page:

<script src="./mods.min.js" ></script>

API samples:

// Initialize the MODS SDK, throw Error when not in teams
await MODS.init();

// Get basic user info from SSO token
var userInfo = MODS.getUserInfo();

// Get microsoft graph client
var graphClient = MODS.getMicrosoftGraphClient();

/** Get microsoft graph auth provider, you can use this auth provider for the graph client by yourself
 *  For example as below
 *  var authProvider = MODS.getMicrosoftGraphAuthProvider();
 *  Client.init({
      defaultVersion: "v1.0",
      debugLogging: true,
      authProvider: authProvider
    })
  */
var authProvider = MODS.getMicrosoftGraphAuthProvider();

/** Call graph api
 *  When call graph API, it would first try to get access token from memory and localStorage
 *  If no token exists, it would acquire the token from MODS
 *  If MODS also doesn't have the token, it would throw an error, and you need to call the function below to get a new token:
 *  MODS.popupLogInPage();
 **/
try {
  var profile = await graphClient.api("/me").get();
  var photoBlob = await graphClient.api("/me/photos('120x120')/$value").get();
} catch (err) {
  if (err.message.indexOf("Access token is expired or invalid") >= 0) {
    // Popup login page to get Microsoft Graph access token
    // The access token would be managed by the SDK and cached in localStorage
    MODS.popupLogInPage();

    //... use graph client
  }
}

FAQs

Package last updated on 15 Dec 2020

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