@boateo6/discord-oauth2
v1.3.3
Published
An easy way for Discord OAuth2
Maintainers
Readme
Table of Contents
- Installation
- Usage
- Methods
- Example
- License
- Author
Installation
To install the package, run the following command in your terminal:
npm install @boateo6/discord-oauth2Usage
This package provides a simple way to authenticate with Discord using OAuth2. Here's an example of how to use it:
Creating an Instance
To use the package, you need to create an instance of the DiscordOAuth2 class, passing in your client ID, client secret, and redirect URI:
const { DiscordOAuth2 } = require("@boateo6/discord-oauth2");
const oauth = new DiscordOAuth2({
client_id: "YOUR_CLIENT_ID",
client_secret: "YOUR_CLIENT_SECRET",
redirect: "http://localhost:3000/api/auth/callback",
});Handling the OAuth2 Flow
To handle the OAuth2 flow, you need to create an Express route that will handle the redirect from Discord:
const express = require("express");
const app = express();
app.get("/api/auth/callback", (req, res) => {
oauth.process(req, res, (data) => {
console.log(data);
});
});In this example, the oauth.process method is called with the Express request and response objects, as well as a callback function that will be called with the authentication data and user data.
Getting User Information
To get information about the authenticated user, you can use the getUserInfo method:
oauth.getUserInfo(access_token, (userInfo) => {
console.log(userInfo);
});This method takes the access token returned by the process method (or if you already have an access token) and a callback function that will be called with the user information.
Methods
new DiscordOAuth2(options)
options.client_id: Your Discord client ID.options.client_secret: Your Discord client secret.options.redirect: The redirect URI for the OAuth2 flow.
oauth.process(req, res, callback)
req: The Express request object.res: The Express response object.callback: A callback function that will be called with the authentication data.
The callback function will be called with an object containing the following properties:
access_token: The access token for the authenticated user.refresh_token: The refresh token for the authenticated user.user_info: An object containing information about the authenticated user.
oauth.getUserInfo(access_token, callback)
access_token: The access token for the authenticated user.callback: A callback function that will be called with the user information.
The callback function will be called with an object containing information about the authenticated user.
License
ISC
Author
boateo6
