2016-09-20 3 views
3

Я пытаюсь войти в мою установку Rocket Chat с помощью REST API. Логин-логин возвращается, и я получаю AuthToken и идентификатор пользователя. Но я не могу обойти экран входа в систему. Другими словами, то, что я хочу сделать, это использовать мое приложение для отправки запроса на вход, а затем, потому что оно успешно обходит экран входа в Rocket Chat и переходит прямо в чат.Rocket Chat - Login via Rest API

Спасибо!

+0

Это не ясно, что вы пытаетесь сделать. , Вы строите webapp? мобильное приложение? Почему появился экран входа в систему Rocket.Chat. Я предполагаю, что вы создаете webapp, и вы используете клиент Rocket Chat. Если вы создаете своего собственного клиента, нет причин, по которым открывается окно входа в систему Rocket.Chat, показывающее –

ответ

4

Вход в Rocket.Chat REST API и ожидание того, что веб-браузер не потребует повторной авторизации, требуется еще несколько шагов.

При аутентификации с REST API успешно полученный объект выглядит как (это с локального сервера разработки):

{ 
    "status": "success", 
    "data": { 
     "authToken": "t2hjaCXP397DxwnYAgQtEaAULDjo4S5vXkopLr04LZL", 
     "userId": "Q4KzBWSGtcCiKTtvC" 
    } 
} 

Из этого результата, вам нужно будет принять authToken и установить в вашем веб-браузер LocalStorage Meteor.loginToken со значением authToken. Например, в данном случае, мы сделаем следующее:

var authToken = 'cXvkTF8X4uu-J_2uWelJGt4iuuTxjD5pFHuqhLOQRLJ'; 
localStorage.setItem('Meteor.loginToken', authToken); 

Вскоре после того, как сделать это, экран Rocket.Chat следует обновить и теперь вы вошли в

+0

Я пробовал ваше решение, но оно не сработало. Я использую ubuntu 16, имея apache2 + php, ракетный чат находится на http://127.0.0.1:3000, и я назвал API останова на http://127.0.0.1/rocket.php, успешно получил токен аутентификации и установлен в локальном хранение, но не работает. Я установил ракетный чат с помощью команды «snap install rocketchat-server», спросите вы, пожалуйста, где я ошибаюсь? – Jass

+0

Вы установили элемент в локальном хранилище точно так же, как это было предложено выше? Так как он чувствителен к каждой части. Кроме того, вы пытались обновить страницу и посмотреть в локальном хранилище, чтобы узнать, что именно было установлено? – bradleyhilton

+0

Да, я пробовал оба, но это не сработало. Я все еще делаю RND на нем – Jass