Tag: twitter

Rails – 避免OmniAuth和共享计算机风险的策略

在测试Omniauth并关注流行的Ryan Bates的video时,我认为存在一个重大的安全漏洞。 这是一个例子 我有两个用户:Aurelien和John 约翰在早上登录到Twitter但忘记退出。 然后他继续我的应用程序并通过http://myapplication.com/auth/twitter连接到Twitter服务。 他被自动分配到Twitter身份validation,因为Twitter记得约翰已登录。约翰去上class。 与此同时,他的兄弟Aurelien使用相同的计算机并使用我的应用程序。 他决定发布我的应用程序的推文并继续访问http://myapplication.com/auth/twitter ,通过OmniAuth登录他的Twitter帐户。 多么惊喜! 他不需要登录,但是当重定向到回调URL时,他发现他当前以John身份登录! 现在我想相信大多数用户不共享他们的电脑/桌面/电话,但我确信这是一个经常出现的问题。 您可以遵循什么策略或逻辑来防止这种情况发生? 例如,如何确保当需要与myapplication不同的用户登录Twitter而不是使用之前打开的Twitter会话时? 欢迎举例!

如何在rails app中设置Twitter gem?

我是一个新手开发者,对文档有点神秘/不知所措。 我想知道如何在Rails 3.1应用程序中实现Twitter gem。 我安装了gem并且知道我需要配置它,但是我将把这个配置信息放在rails应用程序中? 它是否需要以某种方式进行更改以使其与rails应用程序同步? Twitter.configure do |config| config.consumer_key = ENV[‘CONSUMER_KEY’] config.consumer_secret = ENV[‘CONSUMER_SECRET’] config.oauth_token = ENV[‘ACCESS_TOKEN’] config.oauth_token_secret = ENV[‘TOKEN_SECRET’] end 我必须在任何地方要求’推特’吗? 如果我希望我的应用程序的访问者从我的应用程序更新其状态,我是否必须安装Omniauth? 或者这个gem是否足够? 即如果我在gem文件中需要’twitter’并进行捆绑安装,那么捆绑器会处理我需要的一切吗?

Ruby on Rails:如何使用Twitter搜索Api从next_page获取推文? 什么应该是我的since_id和max_id?

这是我的代码。 我试图用@second_results获得下一页的结果。 但它似乎只是重复从@first_results收到的任何内容。 search = TwitterManualSearch.new @first_results = search.first_query(:tag => params[:search]).results @second_results = search.second_query(:tag => params[:search], :since_id => @first_results.results.last.id, :max_id => @first_results.max_id).results 为了您的参考,我写了一些方法来缓解调用,我在这里使用twitter gem – https://github.com/sferik/twitter 我知道我在做一些根本错误的事情,但它是什么? 更新:给你一个简短,粗略和快速的想法,这是我如何使用代码返回结果(不包括我的所有方法) 为了获得第一批结果,我做了 @first_results = Twitter.search(“#tag”, :count => 30, :result_type => “recent”) @first_results.results.map do |status| “#{status.from_user}: #{status.text}” end 然后再获得更多结果 @second_results = search.second_query(“#tag”, :count => 30, :result_type => “recent”, :since_id […]

如何在Rails中使用Twitter gem,需要小才能搞清楚整个事情?

我使用twitter_auth gem访问了用户。 这是代码。 def twitter client = TwitterOAuth::Client.new( :consumer_key => ‘******’, :consumer_secret => ‘********’ ) request_token = client.request_token(:oauth_callback => new_user_url) session[:request_token] = request_token redirect_to request_token.authorize_url end def new client = TwitterOAuth::Client.new( :consumer_key => ‘*****’, :consumer_secret => ‘******’ ) access_token = client.authorize( session[:request_token].token, session[:request_token].secret, :oauth_verifier => params[:oauth_verifier] ) #For testing purpose, i tried posting a status […]

Twitter“无法validation您”错误

我正在使用Twitter gem作为Rails应用程序,这样我就可以将我的博客post自动更新到我的twitter feed中。 我按照gem readme说明 ,将它放在config / initializers / twitter.rb文件中 Twitter.configure do |config| config.consumer_key = YOUR_CONSUMER_KEY config.consumer_secret = YOUR_CONSUMER_SECRET config.oauth_token = YOUR_OAUTH_TOKEN config.oauth_token_secret = YOUR_OAUTH_TOKEN_SECRET end 将这些变量更新到Heroku上,在我的Twitter帐户下注册我的应用程序,给帐户读取,写入和直接访问,然后尝试通过heroku控制台进行更新,如下所示: Twitter.update(“Testing Twitter integration”) 不幸的是,我收到此错误: Twitter::Error::Unauthorized: Could not authenticate you (其次是这些可能无用的细节): from /app/vendor/bundle/ruby/1.9.1/gems/twitter-4.5.0/lib/twitter/response/raise_error.rb:21:in `on_complete’ from /app/vendor/bundle/ruby/1.9.1/gems/faraday-0.8.6/lib/faraday/response.rb:9:in `block in call’ from /app/vendor/bundle/ruby/1.9.1/gems/faraday-0.8.6/lib/faraday/response.rb:63:in `on_complete’ from /app/vendor/bundle/ruby/1.9.1/gems/faraday-0.8.6/lib/faraday/response.rb:8:in `call’ from /app/vendor/bundle/ruby/1.9.1/gems/faraday-0.8.6/lib/faraday/request/url_encoded.rb:14:in `call’ from […]

在Heroku上托管的网站的Twitter速率限制

我有一个使用自定义域在Heroku上托管的rails应用程序。 应用程序在每个页面的顶部显示单个用户的最新推文。 为了避免达到Twitter速率限制(150个请求p / h),我让应用程序在5分钟到期时将搜索结果缓存在memcache(Dalli)中。 这很好用,确保应用程序每小时只发出12个请求。 如果它被高度贩运,这个解决方案可能会有问题,但我觉得它很好。 尽管我远远低于速率限制,但我的网站会定期关闭并查看我的服务器日志,因为我已超出Twitter的速率限制。 这与Heroku有关吗? 还有什么可能导致它? 它与共享IP地址有关吗? 日志: 2012-02-20T22:09:52+00:00 app[web.1]: Rendered pages/home.html.erb within layouts/application (0.8ms) 2012-02-20T22:09:52+00:00 app[web.1]: Rendered layouts/_header.html.erb (336.2ms) 2012-02-20T22:09:52+00:00 app[web.1]: Completed 500 Internal Server Error in 339ms 2012-02-20T22:09:52+00:00 app[web.1]: ActionView::Template::Error (Rate limit exceeded. Clients may not make more than 150 requests per hour.): 2012-02-20T22:09:52+00:00 app[web.1]: 5: 2012-02-20T22:09:52+00:00 app[web.1]: 2012-02-20T22:09:52+00:00 […]

如何强制Twitter Single Sign-On在端口443上使用https

我已经设置了一个使用Twitter进行单点登录的rails应用程序。 在我的Twitter配置中,我的回调如下所示: https://somesite.com/users/auth/twitter : https://somesite.com/users/auth/twitter 但是来自https://api.twitter.com/oauth/authenticate?oauth_token=someoauthtoken的重定向代码在html中具有以下代码: 如何强制Twitter Single Sign-On在端口443上使用https? 我尝试将我的Twitter帐户中的回调设置更改为https://somesite.com:443/users/auth/twitter但它仍然在重定向上使用端口80。 任何帮助将不胜感激。 更新 有没有人使用https与twitter回调的Ruby on Rails应用程序? 如果您使用Twitter进行单点登录,您是否不想使用https?

仅使用omniauth(twitter)登录与Devise,Rails 3,Omniauth

我有一个基于Railscasts 209,210,235和236的设置 – Twitter登录工作得很好; 但我想完全删除用户在我的应用程序本地创建帐户的能力。 换句话说,如果您想登录,则需要使用您的Twitter帐户。 我很快就不会打扰管理本地帐户(现在 – 可能会在某些时候将其添加回来)。 我真的找不到任何有关如何做到这一点的实用指针,并且使用Devise路线并且没有取得非常好的结果。 提前致谢!

是否有一个创建类似Twitter的追随者的gem,或者是一个微不足道的:has_many?

想知道是否有人想要类似Twitter的追随function,是否有gem? 我知道有一个处理“朋友”,但是只是简单地跟随has_many或者是否有一个有助于实现的gem(包括ajax / jquery部分?)

Twitter集成rails 4 app

我正在尝试使用这个gem将twitter feed集成到我的Rails 4应用程序中。 我已经阅读了github页面上的文档,但是在我的视图中尝试使用方法时遇到了问题。 我在名为twitter_init.rb的初始化文件中有以下内容(带有我的身份validation信息): client = Twitter::Streaming::Client.new do |config| config.consumer_key = “YOUR_CONSUMER_KEY” config.consumer_secret = “YOUR_CONSUMER_SECRET” config.access_token = “YOUR_ACCESS_TOKEN” config.access_token_secret = “YOUR_ACCESS_SECRET” end 当我在我的视图中尝试使用以下代码时,我收到错误的undefined local variable or method ‘client’ for class#<#:…> : 是否有另一个公开客户端变量的步骤,或者我没有正确初始化它?