使用twitter gem我想获得经过身份验证的用户的所有关注者。我只是获得了应用程序的注册twitter id的关注者。
我在初始化程序中有一个twitter.rb,它使用Twitter上已注册应用程序的消费者密钥/秘密
Twitter.configure do |config|
config.consumer_key = '****'
config.consumer_secret = '****'
end
当您登录时,您可以通过Devise进行登录。然后在用户配置文件中,用户可以使用Twitter进行身份验证,此时我将存储令牌和密码。
def create
auth = request.env["omniauth.auth"]
currentAuthentication = Authentication.find_by_provider_and_uid(auth['provider'], auth['uid'])
if currentAuthentication
flash[:notice] = "Logged in successfully."
else
current_user.authentications.create(:provider => auth['provider'], :uid => auth['uid'], :token => auth['credentials']['token'], :secret => auth['credentials']['secret'])
flash[:notice] = "Authentication successful."
end
redirect_to authentications_url
end
然后在稍后阶段,我使用我存储的信息验证该用户,并希望得到他的粉丝。
def getwords
# authenticate at twitter
authenticationDetails = current_user.authentications.first()
wordClient = Twitter::Client.new(
:oauth_token => authenticationDetails.token,
:oauth_token_secret => authenticationDetails.secret
)
# get the users followers
#wordClient.update("I'm tweeting using the Twitter Gem.")
cursor = "-1"
followerIds = []
while cursor != 0 do
followers = wordClient.follower_ids
cursor = followers.next_cursor
followerIds+= followers.ids
sleep(2)
end
return followerIds
end
当我执行wordClient.update时,我从已注册的应用程序中发送了一条推文,并且我也获得了已注册应用程序的关注者。
我期待发送推文并获得经过身份验证的用户的关注者?我哪里错了?我能找到的所有例子都是基于一个用户的推特。