2012-10-28 33 views
1

一個Rails的寶石這與西納特拉兼容使用以下步驟設置本身的代碼:如何更改該Rails代碼以使其在Sinatra中工作?標題爲<code>omniauth-ebay</code>

Rails.application.config.middleware.use OmniAuth::Builder do 
     provider :ebay, "runame", "devid", "appid", "certid", "siteid", "apiurl" 
    end 

我知道omniauthomniauth-ebay基於它)寶石與西納特拉絕對兼容。請注意,這不是eBay或gem特定的問題,在Sinatra中肯定應該有一種通用的方式來設置中間件。

那麼,如何改變上面的代碼,使其與Sinatra一起工作?

+0

我從來沒有使用過上面的寶石,所以不知道上面的寶石代碼做了什麼,但仍然有這個幫助'https://gist.github.com/3717973?utm_source = ruby​​weekly&utm_medium = email' – Viren

+0

它怎麼樣幫我? –

回答

2

你只需要瞭解Rails隱藏你的東西。機架中間件實際上直接安裝在機架內部。

在你config.ru文件:

use OmniAuth::Builder do 
    provider :ebay, "runame", "devid", "appid", "certid", "siteid", "apiurl" 
end 

的config.ru由機架裝載,使機架具體的事情應該去那裏,除非你有某種系統的把它在其他地方。我懷疑Sinatra可能允許您從Sinatra應用程序內部撥打#use,但仍然可以在所有情況下使用config.ru。

+0

雖然我已經做到了,非常感謝。 –

相關問題