来自Sinatra Base的对象。获取包括基础对象的应用程序端口

时间:2010-05-28 21:50:06

标签: ruby web-services sinatra

我有一个Sinatra :: Base对象,我希望将其包含在我的所有Web应用程序中。在该基类中,我有启动时调用的configure方法。

我希望配置代码以使用集中式数据库“注册”该服务。注册时需要发送的信息是有关如何联系此Web服务的信息......如主机和端口等。

然后,我计划建立一个监控服务,该服务将覆盖所有已注册的服务,并偶尔ping它们以确保它们仍然正常运行。

在配置方法中,我无法获取端口信息。 'self.settings.port'变量似乎不适用于此方法。

a)关于如何获得端口的任何想法?我有主人。

b)是否有一个sinatra插件已经做了类似的事情所以我不必自己写? : - )

  

//在我的Sinatra :: Base代码中。我们称之为register_me.rb

     

RegisterMe<屈::基

     

配置执行

     

//将主机和端口信息保存到数据库

     

     

获取'/ check_status'

     

//返回状态

     

     
     

//在我的网络服务代码中

     

需要register_me //此时,sinatra将初始化RegisterMe对象并调用configure

     

发帖('/ blah')

     

//此特定Web服务的方法示例

     

1 个答案:

答案 0 :(得分:3)

Sinatra :: Application.port将返回正确的端口