Browse Source

修改remote_login

tags/v1
sylor_huang@126.com 6 years ago
parent
commit
1331561bea
2 changed files with 23 additions and 3 deletions
  1. +21
    -1
      app/controllers/accounts_controller.rb
  2. +2
    -2
      config/application.rb

+ 21
- 1
app/controllers/accounts_controller.rb View File

@@ -76,7 +76,27 @@ class AccountsController < ApplicationController
def remote_login
@user = User.try_to_login(params[:login], params[:password])
if @user
successful_authentication(@user)
self.logged_user = @user
# generate a key and set cookie if autologin
token = Token.get_or_create_permanent_login_token(@user, "autologin")
cookie_options = {
:value => token.value,
:expires => 1.month.from_now,
:path => '/',
:secure => false,
:httponly => false
}
if edu_setting('cookie_domain').present?
cookie_options = cookie_options.merge(domain: edu_setting('cookie_domain'))
end
cookies[autologin_cookie_name] = cookie_options
Rails.logger.info("cookies is #{cookies}")
UserAction.create(:action_id => @user.try(:id), :action_type => "Login", :user_id => @user.try(:id), :ip => request.remote_ip)
user.update_column(:last_login_on, Time.now)
session[:"#{default_yun_session}"] = @user.id
# successful_authentication(@user)
render_ok({user: {id: @user.id, token: @user.gitea_token}})
else
render_error("用户不存在")


+ 2
- 2
config/application.rb View File

@@ -33,8 +33,8 @@ module Educoderplus
provider :cas, url: 'https://urp.tfswufe.edu.cn/cas'
end
config.middleware.use ActionDispatch::Cookies
config.middleware.use ActionDispatch::Session::CookieStore
# config.middleware.use ActionDispatch::Cookies
# config.middleware.use ActionDispatch::Session::CookieStore
config.middleware.insert_before 0, Rack::Cors do
allow do


Loading…
Cancel
Save