我有一个使用 Twitter OAuth 进行身份验证的小型 Sinatra 应用程序。从 10 月 8 日到今天的某个时间,它停止了工作。
症状:我被重定向到 Twitter,我登录,我被重定向回我的应用程序,但我的应用程序无法识别我已登录。
我可以排除我自己的代码(一个月内没有碰过它)和平台(Heroku 是托管的,所有请求看起来都很好)。
代码的相关部分是这样的(基于Alex Lang 的这段代码):
get '/session_auth' do
if params[:oauth_verifier]
access_token = twitter_client.authorize(
session[:request_token], session[:request_token_secret], oauth_verifier: params[:oauth_verifier])
if twitter_client.authorized?
user = db.load(User.to_id(twitter_client.info['screen_name'])) || User.new(login: twitter_client.info['screen_name'], twitter_access_token: access_token.token,
twitter_secret_token: access_token.secret)
db.save! user
session[:user_id] = user.id
end
end
redirect '/'
end
你如何或从哪里开始调试这样的事情?