Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > Общие вопросы Web
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.01.2016, 16:50   #1
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию Node.js - авторизация через куки

Всем привет.... честно говоря пару дней гуглил, искал, пытался вникнуть в новый для себя node.js....

Имеется задача организовать сервис обмена сообщениями, в котором пользователи уже существуют в БД MySQL с логинами и паролями...

простейший пример вроде бы понятен
PHP код:
var WebSocketServer = require('ws').Server;
wss = new WebSocketServer({ port8080 });
wss.on('connection', function connection(ws) {
    
ws.on('message', function incoming(message) {
        
console.log('received: %s'message);
        
ws.send(message);
    });
    
ws.send('Connected');
}); 
Собственно есть пару вопросов.....

1. Как на этапе установления коннекта клиента и сервера - на стороне сервера node.js прочесть cookies передаваемые клиентом в заголовке ... там клиент передает логин и пароль - его я и должен проверить.... идеально - если есть какой то метод который действует вместе с "рукопожатием" то есть клиент стeчится ко мне на сервер для проверки рукопожатия - а там не только стандартное WebSocket проверка но и дополнительная моя проверка по кукам ... реально ли такое вообще

2. Кусочек примера коннекта к БД MySQL и чтения/записи в оную

ссылки на рабочие примеры по работе с авторизацией/куками/MySQL - приветствются ))))
ADSoft вне форума Ответить с цитированием
Старый 13.01.2016, 21:13   #2
vinniepooh
Форумчанин
 
Регистрация: 11.04.2010
Сообщений: 440
По умолчанию

$_COOKIE, может быть?
vinniepooh вне форума Ответить с цитированием
Старый 13.01.2016, 23:09   #3
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

Цитата:
Сообщение от vinniepooh Посмотреть сообщение
$_COOKIE, может быть?
это в PHP .... тут по другому..
ADSoft вне форума Ответить с цитированием
Старый 13.01.2016, 23:59   #4
vinniepooh
Форумчанин
 
Регистрация: 11.04.2010
Сообщений: 440
По умолчанию

А язык-то какой? ) JS?
vinniepooh вне форума Ответить с цитированием
Старый 14.01.2016, 00:09   #5
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Написано ж Node.js кучу раз и в названии, и в сообщении.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 14.01.2016, 00:16   #6
vinniepooh
Форумчанин
 
Регистрация: 11.04.2010
Сообщений: 440
По умолчанию

Ну так он в браузере клиента работает и исполняется.
А автор пишет про сервер.

Он там как работает? Программа запущена (браузер)?
vinniepooh вне форума Ответить с цитированием
Старый 14.01.2016, 00:32   #7
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Сидели в бункере последние пару лет и еще и гугл сломался? https://www.google.com/search?q=Node.js
Node.js это не имя js файла
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 14.01.2016, 23:52   #8
CodeNOT
Форумчанин
 
Аватар для CodeNOT
 
Регистрация: 08.11.2010
Сообщений: 593
По умолчанию

думаю есть смысл почитать тут: http://habrahabr.ru/post/200866/

а так логика простая, при рукопожатии(метод connect) отсылаете еще и куки пользователя, дальше на стороне сервера их парсите, проверяете есть ли такой пользователь в бд, была ли авторизация и если да, то тогда делаете что-то далее, в противном случае что-то не делаете)

конкретнее логика такая, я бы на стороне клиента хранил бы авторизационный токен, а в бд (та же mongo например) хранил бы открытую сессию и проверял что сессия еще жива и не истекло ее время жизни.

если не понятно пояснил то просьба сказать это, у меня бывают клины особенно ночью
CodeNOT вне форума Ответить с цитированием
Старый 15.01.2016, 08:07   #9
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

да логику то я понимаю.....))) и как раз как вы и описали.... тут вопрос в незнании конкретных операторов/функций .... не встечал примера где именно функция коннекта дописывалась/переписывалась и использовались куки... но нничего докопаюсь ))))
за пример спасибо хотя я его уже видел)))
ADSoft вне форума Ответить с цитированием
Старый 15.01.2016, 09:24   #10
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Я ж тебе писал в личку,
Код:
var WebSocketServer = require('ws').Server;
wss = new WebSocketServer({ port: 8080 });
wss.on('connection', function connection(ws) {

    console.log( ws.request.headers.cookie );

    ws.on('message', function incoming(message) {
        console.log('received: %s', message);
        ws.send(message);
    });
    ws.send('Connected');
});
=)
Alar, верни репу!
Naive вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Онлайн игра на Node.js + SockJS или socket.io / Node.js freerunner JavaScript, Ajax 2 17.04.2014 11:01
Авторизация через SMTP Rain_Walker Общие вопросы Delphi 2 20.11.2012 21:49
Авторизация на сайте через куки niva622 Работа с сетью в Delphi 4 10.08.2012 23:29
авторизация и куки temkas C# (си шарп) 3 10.08.2011 11:21