Не удается получить доступ к параметрам Фарадея в представлениях

У меня есть API с базой данных и другим приложением rails без активной записи, я также использую ActiveResource для управления некоторыми запросами к базе данных.

Мой интерфейсный контроллер приложения

class ApplicationController < ActionController::Base
  protect_from_forgery with: :exception
  skip_before_action  :verify_authenticity_token
end

и у меня есть действие для аутентификации пользователя из моего внешнего интерфейса в API

из интерфейса у меня есть этот метод

def create_session
  conn = Faraday.new(:url => 'http://localhost:3001')
  conn.post '/auth_user', { :email => params[:email], :password => params[:password] }
end

и по API

def auth_user
  user = User.find_by(email: params[:email])
  if user && user.authenticate(params[:password])

    conn = Faraday.new(:url => 'http://localhost:3000') 
    conn.post '/add_session', { :status => "right", :user => user.id }
  else
    conn = Faraday.new(:url => 'http://localhost:3000') 
    conn.post '/add_session', { :status => "wrong" }
  end 

конец

Обратите внимание, что у меня есть доступ к params[:email] и params[:password], и я получаю правильный статус во внешнем интерфейсе

Затем внутри внешнего интерфейса я не могу получить доступ к params[:status] или params[:user] excpet на byebug. Я пытался сделать session[:user_id] = params[:user] и это не работает

что мне здесь не хватает?


person Amir El-Bashary    schedule 20.10.2017    source источник


Ответы (1)


Погуглив и поиграв, я понял, что делаю это неправильно.

Поскольку действие было выполнено, и все его переменные исчезли, насколько я понял, мне удалось получить эту информацию, выполнив:

conn.get '/auth_user'

Тогда я мог бы получить ответ с информацией json, которая мне нужна.

person Amir El-Bashary    schedule 22.10.2017