Verify Telegram Login hash signature
npm install node-telegram-login
npm install --save node-telegram-login
`
Usage
Use it in your app like so:
`javascript
const TOKEN = ''
const TelegramLogin = require('node-telegram-login');
const MySiteLogin = new TelegramLogin(TOKEN);
if(MySiteLogin.checkLoginData(data)) console.log('Data is from telegram! ;)');
if(!MySiteLogin.checkLoginData(data)) console.log('Data is NOT from telegram :(')
`
You can use it like an express.js middleware like this:
`javascript
const TOKEN = ''
const TelegramLogin = require('node-telegram-login');
const MySiteLogin = new TelegramLogin(TOKEN);
app.get('/login', MySiteLogin.defaultMiddleware(), (req, res) => {
console.log(res.locals.telegram_user) //null if not from telegram, contains login data otherwise;
});
`
Also it is possible to set a custom middleware with specified success and fail functions.
Success function will be called with req, res, next and the login_data.
Fail function will be called with req, res, next arguments.
In this case you are responsable of calling next()
`javascript
const TOKEN = ''
const TelegramLogin = require('node-telegram-login');
const MySiteLogin = new TelegramLogin(TOKEN);
let success = (req,res,next,login_data) => {
res.locals.telegram_user = login_data;
next();
}
let fail = (req,res,next) => {
res.sendStatus(403);
}
app.get('/login', MySiteLogin.customMiddleware(success, fail), (req, res) => {
//do your stuff;
});
``