Advertisement
Guest User

Untitled

a guest
Aug 1st, 2017
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.59 KB | None | 0 0
  1. class ApplicationController < ActionController::Base
  2. protect_from_forgery
  3.  
  4. protected
  5.  
  6. def get_call(command)
  7. http = create_connection
  8.  
  9. request = Net::HTTP::Get.new(command)
  10. response = http.request(request)
  11.  
  12. result = JSON.parse(response.body)
  13. end
  14.  
  15. def post_call(command, data = nil)
  16. http = create_connection
  17.  
  18. request = Net::HTTP::Post.new(command)
  19.  
  20. if data
  21. request.set_form_data(data)
  22. end
  23.  
  24. response = http.request(request)
  25.  
  26. result = JSON.parse(response.body)
  27. end
  28.  
  29. private
  30. def create_connection
  31. @connection ||= Net::HTTP.new(Api.config[:host], Api.config[:port].to_i).start
  32. end
  33. end
  34.  
  35.  
  36. class UsersController < ApplicationController
  37. def index
  38. end
  39.  
  40. def new
  41. @user = User.new
  42. end
  43.  
  44. def create
  45. @user = User.new(params[:user])
  46.  
  47. page = post_call('/api/login', { :login => @user.login, :password=> @user.password })
  48.  
  49. if page["status"] == "ok"
  50. redirect_to accounts_url
  51. else
  52. puts page
  53. render "new"
  54. end
  55. end
  56.  
  57. def destroy
  58. result = get_call('/api/logout')
  59. puts result
  60. end
  61.  
  62. end
  63.  
  64. backend:
  65.  
  66.  
  67. class UsersController < ApplicationController
  68. # login
  69. def new
  70. @login = params[:login]
  71. @password = params[:password]
  72.  
  73. @user = User.where(:login => @login, :password => @password).first
  74.  
  75. if @user
  76. session[:user_id] = @user.id
  77. render_successful_request({ :id => session[:user_id] })
  78. else
  79. render_fail_request("Incorrect parameters")
  80. end
  81.  
  82. end
  83. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement