3.0.0 • Published 3 years ago

vuejs-oauth2-discord v3.0.0

Weekly downloads
-
License
ISC
Repository
github
Last release
3 years ago

VueJs Oauth2 Discord

VueJS v3 REQUIRED

Installation

npm i vuejs-oauth2-discord

Exemples

In VueJs:

Main.js

import { createApp } from 'vue'
import App from './App.vue'
import {initClient} from 'vuejs-oauth2-discord';

createApp(App).use(initClient, {
    host: `api.yourhost.xyz`,
    port: 80,
    ssl: true,
    withCredentials: true,
    path: '/discord',
    headers: {
        'Content-Type': 'application/json',
        'Access-Control-Allow-Origin': 'https://yourhost.xyz/',
        'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE'
    }
}).mount('#app');

In Component

this.$login(`/redirection/test`, (response) => {
    console.log(response.data['isAuthenticated']) // true or false
    this.user = response.data['user']; // save user in session
    window.location.href = response.data['redirect']; // for redirect to page
})

this.$disconnect(() => {
    //callback

    window.location.href = "/"; // redirect to /
})

In Server (expressJs):

server.js

const
    express = require('express'),
    session = require('express-session'),
    passport = require('passport'),
    DiscordStrategy = require('passport-discord').Strategy,
    {Server} = require('vuejs-oauth2-discord');

passport.serializeUser((user, done) => {
    done(null, user);
});
passport.deserializeUser((obj, done) => {
    done(null, obj);
});

const app = express();

passport.use(new DiscordStrategy({
    clientID: 'yourClientId',
    clientSecret: 'yourClientSecret',
    callbackURL: 'https://api.yourhost.xyz/discord/callback',
    scope: ['identify'],
    prompt: 'none'
}, async function (accessToken, refreshToken, profile, done) {
    return done(null, profile);
}));

app.use(passport.initialize());
app.use(passport.session());

// CONFIG ROUTES FOR OAUTH 2 DISCORD
new Server(app, `https://api.yourhost.xyz`, `https://yourhost.xyz`, "/discord");

require('http').createServer(app).listen(5000);
3.0.0

3 years ago

1.2.0

3 years ago

1.1.4

3 years ago

1.1.3

3 years ago

1.1.2

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago