在Heroku上的Ruby中的消费者Web应用程序的问题

时间:2011-09-06 10:46:43

标签: ruby-on-rails heroku

我开发了一个简单的Ruby“Hello World”应用程序。

现在我想使用我在heroku平台上托管的附加组件(附加组件是简单的休息WCF服务,如get& post),addon-menifest.json文件如下所示

{
 "id": "Myaddon",
 "api": {
 "config_vars": [ "MYADDON_URL" ],
 "password": "mypass",
 "sso_salt": "oKWSWM2Nj7X0uX90",
 "production": "https://yourapp.com/",
 "test": "http://localhost/RestWCFDemo/RestServiceImpl.svc"
 }
} 

我在Ruby应用程序根目录中添加了这个文件,在app/controllers我创建了welcome_controller.rb(设置索引作为route.rb的起点)文件,其中包含以下代码

class WelcomeController < ActionController::Base
 protect_from_forgery

  def index
   abort "env URL is not set" unless ENV.has_key? 'MYADDON_URL'
 end
end

最终输出我总是得到env URL没有被设置为异常。我想通过heroku Build Consumer to test heroku addon

的第二部分

任何人都可以帮我解决这个heroku的过程吗?

由于 阿伦。

2 个答案:

答案 0 :(得分:0)

环境变量区分大小写。你的代码不应该

abort "env URL is not set" unless ENV.has_key? 'MYADDON_URL'

答案 1 :(得分:0)

您的应用程序需要提供配置界面。关注provisioning documentation

您需要创建一个控制器,该控制器必须至少响应2个操作:配置和取消配置。当用户尝试启用插件时,Heroku将向您的配置操作发送POST请求,并期望您的应用程序创建必要的配置和帐户,并返回用户详细信息。

同样,当用户删除插件时,Heroku会调用您的取消配置URI并希望它删除用户帐户。

请参阅API reference