草庐IT

generated-requests

全部标签

ruby - 如何修补 RequestId 中间件或为什么 Heroku 不使用标准的 HTTP_X_REQUEST_ID?

Heroku推出了一个newlabsfeaturefortrackinghttp-request-id从它的路由器。一些有用的背景知识:Rails3.2推出了一个带有TaggedLogger的功能到includeauniquerequestIDintothelogs,这样您就可以跟踪给定日志行属于哪个Web请求。这在运行多个将日志流式传输到同一个日志存储的Web服务器时非常重要,例如这与Heroku或Unicorn设置等上的多个测功机很常见。现在,借助Heroku的实验室功能,Heroku路由器将生成此请求ID,以便您可以在请求进入应用程序之前从路由器级别跟踪该请求。这很重要,例如如果

ruby-on-rails - Rails - request.env ['HTTP_X_FORWARDED_FOR' ] 和 request.remote_ip 之间的区别

我正在对现有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_

ruby rubocop : how to freeze an array constant generated with splat

我正在分配一个这样的数组常量:NUMS=*(2..9)Rubocop说C:卡住分配给常量的可变对象。NUMS=*(2..9)^^^^^所以我试试NUMS=*(2..9).freezeRubocop说C:卡住分配给常量的可变对象。NUMS=*(2..9).freeze^^^^^^^^^^^^尝试过NUMS=(*(2..9)).freezeRubocop说E:意外的标记tRPAREN(使用Ruby2.0解析器;在AllCops下使用TargetRubyVersion参数进行配置)NUMS=(*(2..9)).freeze^尝试过NUMS=[1,2,3,4,5,6,7,8,9].freeze

ruby-on-rails - "request.referer == nil"是否总是表示直接流量?

当request.referer没有返回任何内容时,这是否总是意味着访问者没有通过链接执行请求-即她以某种方式手动输入了请求页面的地址?或者还有其他情况request.referer返回nil(假设请求成功)? 最佳答案 简短回答:否。一般来说,引荐来源网址-与所有其他HTTPheader一样-是用户提交的数据。不应信任用户提交的数据。我突然想到这些场景,如果用户没有手动输入URL,则不会设置引荐来源网址。点击电子邮件客户端中的链接。使用可删除引荐来源网址的隐私软件。机器人/蜘蛛可能不会设置此header。Followingalin

ruby - 使用 Ruby/Sinatra 和 Rest-Graph gem 在 Facebook 应用程序中获取 signed_request

我使用Sinatra和Rest-Graphgem构建了一个Facebook应用程序.现在我想embedtheappasaniframetabinaFacebookPage.为此,我需要从Facebook发送到我的应用程序的signed_request中获取数据。Rest-Graphgem声明了以下功能onitsGithubpage:Utilitytoextractaccess_tokenandchecksigincookies/signed_request我找不到任何关于如何使用这个“实用程序”的文档。你能给我指点一些文档或者更好的,给我一个关于如何在Ruby/Sinatra中使用它的

ruby-on-rails - 使用 ruby​​/rails geocoder gem 获取 request.location 附近的位置

如何使用geocodergemforruby​​onrails3.2.x获取当前位置附近的位置?我知道要查找您会使用的其他地点之一附近的地点@myClass.nearbys(50)但我希望它们靠近浏览器位置(request.location),而不是靠近我的另一个位置。类似于request.location.nearby(50)或类似的东西。如何实现?谢谢 最佳答案 如果你有用户所在位置的经纬度,你可以这样查询location_info=request.location@locations=Location.near([locati

ruby-on-rails - Rack 和 rack.request.form_vars/rack.request.form_hash

我正在做一些中间件,在它到达Rails之前更改authenticity_token参数。我可以看到env.inspect给出了rack.request.form_vars和rack.request.form_hash。两者都包含真实性token。Rails使用哪一个?为什么Rack两者都提供? 最佳答案 让我们看看源码吧!这两个变量都来自使用Rack::Request辅助类。它为请求参数提供了一个很好的接口(interface)。Rack应用程序不需要使用它,但Rails确实会使用它。变量供Rack::Request内部使用。rac

ruby-on-rails - rails script/generate 默认跳过不必要的文件

自从我开始使用rspec等之后,Script/generate变得非常烦人。我不再需要单元测试文件和fixtures,但是script/generate无论如何都会生成它们。是否可以将--skip-fixtures和--skip-test设置为系统范围(或至少项目范围)的默认设置? 最佳答案 您可以编辑您的应用程序脚本/生成文件以自动附加选项#!/usr/bin/envrubyARGV 关于ruby-on-rails-railsscript/generate默认跳过不必要的文件,我们在S

ruby-on-rails - 炼油厂 CMS : generating migrations for existing models within an engine

我想向我在RefineryCMS引擎中创建的模型添加一个属性。我知道我可以执行以下操作:rails生成迁移AddPartNumberToProductspart_number:string手动将迁移文件从db/migrate移动到vendor/extensions/products/db/migrate但是是否有命令首先将迁移生成到正确的文件夹中?谢谢! 最佳答案 根据@parndt(theleaddeveloperoftheRefineryproject),我上面概述的方法是正确的。

ruby - Github API : Get pull request for specific release tag

是否可以获得与发布标签相关的拉取请求列表(或只是数字)?我一整天都在查看GithubAPI文档并尝试了不同的方法,但我看不出如何才能完成这项工作。当我通过API获得提交时,我看不到拉取请求信息可用,即使拉取请求ID和链接在这里可用,例如:https://github.com/octokit/octokit.rb/commit/1d82792d7d16457206418850a3ed0a0230defc81(请参阅左上角“master”旁边的#962链接) 最佳答案 您可以提取您的标签与前一个标签之间的提交,并使用这些提交中的每一个搜