与Sinatra兼容的名为omniauth-ebay
的Rails gem使用以下代码进行设置:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :ebay, "runame", "devid", "appid", "certid", "siteid", "apiurl"
end
我知道omniauth
(omniauth-ebay
基于它)gem绝对与Sinatra兼容。请注意,这不是eBay或gem特定的问题,当然应该有一种在Sinatra中设置中间件的通用方法。
那么,如何更改上面的代码以使其与Sinatra一起使用?
答案 0 :(得分:2)
您只需要了解Rails隐藏的内容。机架中间件实际上直接安装在Rack内部。
在你的config.ru文件中:
use OmniAuth::Builder do
provider :ebay, "runame", "devid", "appid", "certid", "siteid", "apiurl"
end
配置是由Rack加载的,所以任何特定于Rack的东西都应该放在那里,除非你有某种系统把它放在别的地方。我怀疑Sinatra可能允许你从你的Sinatra应用程序中调用#use
,但仍然,config.ru将适用于所有情况。