`
rshua
  • 浏览: 23882 次
  • 性别: Icon_minigender_1
  • 来自: jx
文章分类
社区版块
存档分类
最新评论

rails中自定义rack

阅读更多

具体rack是啥,middleware是啥,metal是啥就不说了!

看看自定义rack吧:

在lib下面定义一个这样的文件:内容如下:

class ModelAccessArea
  def initialize(app)
    @app = app
  end
  
  def call(env)
    if env["PATH_INFO"] =~ /^\/poller/
      [200, {"Content-Type" => "text/html"}, "Hello, World"]
    else
      [404, {"Content-Type" => "text/html"}, "Not Found"]
    end
  end
end

 在initializers中定义一个文件:内容如下:

YourAppName::Application.config.middleware.use ::ModelAccessArea

 这样一来的话:

  http://localhost:3000/poller
  显示 Hello, World

其他请求均为not found!

 

分享到:
评论

相关推荐

    rails-beginner-s-guide

    在Rails中,拦截器允许在处理请求的特定点插入自定义代码,实现如日志记录、性能分析等功能。订阅者模式允许对象监听其它对象的事件,并在事件发生时执行特定操作。 此外,书中还介绍了Action Mailer中的邮件帮助...

    Rails进行敏捷Web开发(所有版本的源码rails3.0-4.0)

    此外,`rails generate scaffold`命令也变得更加灵活,可以自定义模板。 4. Rails 4.0: Rails 4带来了大量的改变和优化。最显著的是加入了Strong Parameters,提高了安全性,避免了Mass Assignment漏洞。另外,它...

    Ruby-RailsFootnotes在每一个Rails页脚展示应用程序的相关信息方便调试

    在解压缩的`rails-footnotes-master`文件中,包含了Rails Footnotes的源码,如果你有兴趣深入研究或者想要自定义功能,可以查看其中的Ruby代码,包括配置选项和视图模板。通过阅读源码,你可以了解到这个插件是如何...

    rack-0.87.zip

    Rack在IT行业中是一个重要的组件,尤其在Ruby on Rails社区中,它作为Web服务器和Rails应用之间的接口。这个压缩包可能包含了Rack框架的源代码、配置文件、示例应用或者其他与0.87版本相关的开发资源。 描述 ...

    weixin_rails_middleware, 微信集成 ruby weixin_rails_middleware for integration weixin..zip

    `weixin_rails_middleware` 是基于 Ruby 的 Rack 技术构建的,它能够插入到 Rails 应用的请求处理流程中。当收到微信服务器发来的请求时,中间件会自动处理这些请求,如验证签名、解析XML数据,并提供相应的响应。 ...

    rack-timesec-源码.rar

    在实际项目中,我们可以通过自定义Rack::Timesec的配置,如调整时间单位、改变输出格式,甚至扩展其功能,比如将时间信息发送到监控系统,以便于实时监控和报警。通过阅读和理解源码,开发者可以更灵活地运用这个...

    The Rails 4 Way

    - 在Rails 4中,Bundler已经成为标准配置的一部分,对于维护项目的依赖性至关重要。 2. **启动与应用设置** - 这部分涵盖了如何配置Rails应用程序的基本设置,包括数据库连接、邮件服务器等。 - 还包括了如何...

    rails_routing_guide

    Rails路由指南 ...通过Rails路由指南,开发者可以深入了解Rails路由的用户面向功能,并能够在实际开发中运用自如,快速有效地设置和自定义路由规则,确保Web应用能够处理外部请求并作出正确的响应。

    rack教程(ruby)

    在Rack中,Handler是一个能够接收请求并将请求传递给Rack应用的组件。Handler还可以处理Rack应用的响应,并将其发送给客户端。常见的Handler包括WEBrick、Thin等。要使用特定的Handler,需要在项目中指定它。 #####...

    Ruby-OmniAuth利用Rack中间件的一个灵活认证系统

    OmniAuth 还提供了丰富的自定义选项,比如可以在回调处理中添加额外的逻辑,或者在用户已经登录时更新他们的资料。例如,你可以在回调处理控制器中进行以下操作: ```ruby def create auth = request.env['...

    Ruby-Split基于Rack的AB测试框架

    Split框架充分利用了Rack的特性,将A/B测试的逻辑无缝地集成到Ruby on Rails或其他Rack兼容的应用中。 首先,让我们深入了解一下什么是A/B测试。A/B测试是一种统计方法,用于比较两种或多种变体(如网页设计、营销...

    Redmine 搭建 Ruby_Ruby_on_Rails 项目管理系统

    3. **gem 文件获取**:通过 wget 命令下载必要的 gem 文件,这些 gem 包括但不限于 Rails、Rack 和其他相关的支持包。这些 gem 包是构建和运行 Redmine 必不可少的部分。 #### 三、Redmine 的核心功能与优势 - **...

    obscenity:Obscenity是RubyRubinius,Rails(通过ActiveModel)和Rack中间件的亵渎性过滤器

    Obscenity是Ruby / Rubinius,Rails(通过ActiveModel)和Rack中间件的亵渎性过滤器。 安装 将此行添加到您的应用程序的Gemfile中: gem 'obscenity' 然后执行: bundle install 或将其自己安装为: gem ...

    Ruby-Rails的异常通知插件

    Exception Notification插件的核心功能是在Rack或Rails应用发生错误时,自动发送通知给指定的接收者,如开发团队的邮箱或者通过其他通信方式(如Slack、SMS等)。这样,即使应用在生产环境中遇到问题,开发者也能...

    Ruby-Sprockets基于Rack的资源打包系统

    1. **Rack接口**:Rack是Ruby Web服务器和应用之间的标准接口,Sprockets作为一个Rack中间件运行,意味着它可以无缝集成到任何兼容Rack的Web服务器或框架中,如Ruby on Rails。 2. **模块化开发**:Sprockets引入了...

    librato-rails:向Librato Metrics服务报告关键应用程序统计信息,并轻松跟踪您自己的自定义指标

    librato-rails会为你的Rails应用程序报告关键统计数据 ,让您可以轻松地跟踪自己的自定义指标。 指标是在后台异步传递的,因此它们不会影响您的请求的性能。 Ruby 1.9.3及更高版本支持Rails 3.0或更高版本。 我们的...

    Ruby-BugsnagRailsSinatraRack和普通Ruby应用的错误监控

    Bugsnag能够实时地监控你的Rails、Sinatra和Rack应用,当程序中发生错误时,它会立即通知你。这样,你可以在用户遇到问题之前就发现并修复它们,从而提高应用的稳定性和用户体验。通过提供详细的错误堆栈跟踪,...

    Ruby-warden普通的Rack身份认证框架

    Ruby-warden是一个用于Ruby应用的身份验证框架,它作为一个中间件在Rack应用程序堆栈中工作。Rack是Ruby web服务器和web框架之间的一个简洁接口,使得开发人员能够轻松地构建自己的web服务或框架。Warden的目标是...

    Ruby-Garner一组Rack中间件和缓存帮手实现不同的缓存策略

    开发者可以根据需求调整缓存存储的后端,比如内存中的缓存(如Rails的ActiveSupport::Cache::Store)、数据库存储或者是分布式缓存系统(如Redis或Memcached)。此外,还可以自定义缓存键的生成规则,以确保缓存的...

Global site tag (gtag.js) - Google Analytics