diff --git a/app/controllers/bind_users_controller.rb b/app/controllers/bind_users_controller.rb index f58124529..f5ed33809 100644 --- a/app/controllers/bind_users_controller.rb +++ b/app/controllers/bind_users_controller.rb @@ -12,6 +12,7 @@ class BindUsersController < ApplicationController tip_exception '该账号已被绑定,请更换其他账号进行绑定' if bind_user.bind_open_user?(params[:type].to_s) "OpenUsers::#{params[:type].to_s.capitalize}".constantize.create!(user: bind_user, uid: session[:unionid]) + successful_authentication(bind_user) @user = bind_user end diff --git a/app/controllers/oauth/callbacks_controller.rb b/app/controllers/oauth/callbacks_controller.rb index 8a06a6611..72885e7d9 100644 --- a/app/controllers/oauth/callbacks_controller.rb +++ b/app/controllers/oauth/callbacks_controller.rb @@ -69,6 +69,8 @@ class Oauth::CallbacksController < Oauth::BaseController open_user = "OpenUsers::#{platform.to_s.capitalize}".constantize.find_by(uid: uid) if open_user.present? && open_user.user.present? successful_authentication(open_user.user) + redirect_to root_path(new_user: false) + return else if current_user.blank? || !current_user.logged? session[:unionid] = uid @@ -76,6 +78,7 @@ class Oauth::CallbacksController < Oauth::BaseController "OpenUsers::#{platform.to_s.capitalize}".constantize.create!(user: current_user, uid: uid) end end + Rails.logger.info("[OAuth2] session[:unionid] -> #{session[:unionid]}") redirect_to "/bindlogin/#{platform}" end diff --git a/app/views/bind_users/create.json.jbuilder b/app/views/bind_users/create.json.jbuilder index 0ac7dc823..7223be386 100644 --- a/app/views/bind_users/create.json.jbuilder +++ b/app/views/bind_users/create.json.jbuilder @@ -1,3 +1,4 @@ +json.status 0 json.username @user.full_name json.real_name @user.real_name json.login @user.login