3.1.2 • Published 1 year ago

@lucaselb/node-sp-auth v3.1.2

Weekly downloads
-
License
-
Repository
github
Last release
1 year ago

custom-node-sp-auth - nodejs to SharePoint unattended http authentication

Project forked from: https://github.com/s-KaiNet/node-sp-auth

How to use:

Install:

npm install @lucaselb/node-sp-auth --save-dev

Create authentication headers and perform http request:

import * as spauth from '@lucaselb/node-sp-auth';
import * as request from 'request-promise';

//get auth options
spauth.getAuth(url, credentialOptions)
  .then(options => {

    //perform request with any http-enabled library (request-promise in a sample below):
    let headers = options.headers;
    headers['Accept'] = 'application/json;odata=verbose';

    request.get({
      url: 'https://[your tenant].sharepoint.com/sites/dev/_api/web',
      headers: headers
    }).then(response => {
      //process data
    });
  });

API:

getAuth(url, credentialOptions)

return value:

Promise resolving into object with following properties:

  • headers - http headers (normally contain Authorization header, may contain any other heraders as well)
  • options - any additional options you may need to include for succesful request. For example, in case of on premise user credentials authentication, you need to set agent property on corresponding http client

params:

  • url - required, string, url to SharePoint site, https://sp2013/sites/dev/ or https:/[your tenant].sharepoint.com/sites/dev/
  • credentialOptions - optional, object in a form of key-value. Each authentication option requires predefined credential object, depending on authentication type. Based on credentials provided, node-sp-auth automatically determines which authentication strategy to use (strategies listed in the top of the readme file).

Possible values for credentialOptions (depending on authentication strategy):

Please, use Wiki to see how you can configure your environment in order to use any of this authentication options.

setup(configuration)

params:

  • configuration - object accepting some configuration values for node-sp-auth. Currently it supports only configuration of underline request module via providing below code (for options available consider request repository):
    spauth.setup({
       requestOptions: {... request options object}
     });