Heroku推出了一个newlabsfeaturefortrackinghttp-request-id从它的路由器。一些有用的背景知识:Rails3.2推出了一个带有TaggedLogger的功能到includeauniquerequestIDintothelogs,这样您就可以跟踪给定日志行属于哪个Web请求。这在运行多个将日志流式传输到同一个日志存储的Web服务器时非常重要,例如这与Heroku或Unicorn设置等上的多个测功机很常见。现在,借助Heroku的实验室功能,Heroku路由器将生成此请求ID,以便您可以在请求进入应用程序之前从路由器级别跟踪该请求。这很重要,例如如果
我正在对现有RoR应用程序添加一些更改,发现request.env['HTTP_X_FORWARDED_FOR']返回了nil。我将其更改为request.remote_ip并获得了客户端的正确IP地址。为什么request.remote_ip在request.env['HTTP_X_FORWARDED_FOR']返回nil时返回一个IP?它们之间有什么区别?我怎样才能使request.env['HTTP_X_FORWARDED_FOR']工作,我应该使用哪一个(最佳实践)? 最佳答案 通常,您应该使用request.remote_
当request.referer没有返回任何内容时,这是否总是意味着访问者没有通过链接执行请求-即她以某种方式手动输入了请求页面的地址?或者还有其他情况request.referer返回nil(假设请求成功)? 最佳答案 简短回答:否。一般来说,引荐来源网址-与所有其他HTTPheader一样-是用户提交的数据。不应信任用户提交的数据。我突然想到这些场景,如果用户没有手动输入URL,则不会设置引荐来源网址。点击电子邮件客户端中的链接。使用可删除引荐来源网址的隐私软件。机器人/蜘蛛可能不会设置此header。Followingalin
我使用Sinatra和Rest-Graphgem构建了一个Facebook应用程序.现在我想embedtheappasaniframetabinaFacebookPage.为此,我需要从Facebook发送到我的应用程序的signed_request中获取数据。Rest-Graphgem声明了以下功能onitsGithubpage:Utilitytoextractaccess_tokenandchecksigincookies/signed_request我找不到任何关于如何使用这个“实用程序”的文档。你能给我指点一些文档或者更好的,给我一个关于如何在Ruby/Sinatra中使用它的
如何使用geocodergemforrubyonrails3.2.x获取当前位置附近的位置?我知道要查找您会使用的其他地点之一附近的地点@myClass.nearbys(50)但我希望它们靠近浏览器位置(request.location),而不是靠近我的另一个位置。类似于request.location.nearby(50)或类似的东西。如何实现?谢谢 最佳答案 如果你有用户所在位置的经纬度,你可以这样查询location_info=request.location@locations=Location.near([locati
我正在做一些中间件,在它到达Rails之前更改authenticity_token参数。我可以看到env.inspect给出了rack.request.form_vars和rack.request.form_hash。两者都包含真实性token。Rails使用哪一个?为什么Rack两者都提供? 最佳答案 让我们看看源码吧!这两个变量都来自使用Rack::Request辅助类。它为请求参数提供了一个很好的接口(interface)。Rack应用程序不需要使用它,但Rails确实会使用它。变量供Rack::Request内部使用。rac
是否可以获得与发布标签相关的拉取请求列表(或只是数字)?我一整天都在查看GithubAPI文档并尝试了不同的方法,但我看不出如何才能完成这项工作。当我通过API获得提交时,我看不到拉取请求信息可用,即使拉取请求ID和链接在这里可用,例如:https://github.com/octokit/octokit.rb/commit/1d82792d7d16457206418850a3ed0a0230defc81(请参阅左上角“master”旁边的#962链接) 最佳答案 您可以提取您的标签与前一个标签之间的提交,并使用这些提交中的每一个搜
在MichaelHartl'sRailsTutorial(Rails3.2),在list9.52中:describe"whensigninginagain"dobeforedodeletesignout_pathprintpage.html我插入了那两张打印品。而且,令人惊讶的是我得到了同一页的打印输出(这不应该,它应该在发送DELETE请求后将您带回根url)。发生这种情况后,由于visitsignin_path将我带回登录页面,因此登录过程成功,测试用例也成功。然而,第二个printpage.html给了我一个仍然登录的用户的标题。当我将deletesignout_path更改为c
当使用Eventmachine异步执行HTTP请求时,可以使用em-http-request或其他一些方式,是否有可能在errback回调中获取有关错误的信息?比如连接错误、超时和无效响应? 最佳答案 有人问这个问题已经有一段时间了,但我发现自己今天也在尝试做同样的事情。HttpClient对象上有一个错误setter/getter。这是我的一般方法,使用光纤池:fiber=Fiber.current@request=EventMachine::HttpRequest.new(url)@http=@request.get(opts)
我正在关注这篇文章,我可以在下面的这个ruby文件中编写这段代码,主页确实有示例应用程序,但当我运行bundleexec时,它仍然说静态页面主页应该有内容“示例应用程序”rspec规范/requests/static_pages_spec.rbspec/requests/static_pages_spec文件代码:require'spec_helper'describe"Staticpages"dodescribe"Homepage"doit"shouldhavethecontent'SampleApp'"dovisit'/static_pages/home'page.should