1.0.0 • Published 4 years ago

steam-oauth v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
4 years ago

steam-oauth

A wrapper package around Steam's oAuth API, which supports promises :)

Usage

Install the package by typing npm i steam-oauth in your project folder.

Setup

const SteamAuth = require("steam-oauth");

const steam = new SteamAuth({
  realm: "http://localhost:5000", // Site name displayed to users on logon
  returnUrl: "http://localhost:5000/auth/steam/authenticate", // Your return route
  apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXXX" // Steam API key
});

Routes

app.get("/auth/steam", async (req, res) => {
  const redirectUrl = await steam.getRedirectUrl();
  return res.redirect(redirectUrl);
});

app.get("/auth/steam/authenticate", async (req, res) => {
  try {
    const user = await steam.authenticate(req);

    //...do something with the data
  } catch (error) {
    console.error(error);
  }
});

Methods

getRedirectUrl

Gets the redirect URL to Steam.

Parameters

None

Returns

  • Promise (String)

Example

steam.getRedirectUrl().then(url => {
  //...do something with the url
});

authenticate

Authenticates the user with oAuth.

Parameters

  • request (ExpressJsRequest, Object)

Returns

  • Promise (UserObject)

Example

steam.authenticate(req).then(user => {
  //...do something with the user
});

Objects

UserObject

Object which holds all the authenticated user's data. The key _json holds the raw response from Steam API.

Example

{
  _json: { ... },
  steamid: "12345678912345678",
  username: "Example Username",
  name: "Example Name",
  profile: "https://steamcommunity.com/id/Example",
  avatar: {
    small: "...",
    medium: "...",
    large: "..."
  }
}

License

MIT <3

1.0.0

4 years ago