2014-09-29 61 views
1

我用葡萄來建立自己的API的網站,我想添加自動使用日誌功能到我的網站,所以我在我的葡萄:: API類使用預先準備,這是我如何做:使用前置包裝葡萄API方法

module GrapeExtension 
def get(paths = ['/'], options = {}, &block) 
    #add log code here 
    super 
end 
end 

,並添加代碼,我用葡萄:: API,如

class API < Grape::API 
    prepend GrapeExtension 
    #other code 
    get '/info' do 
    #function code 
    end 
end 

但似乎當我請求/信息API我在GrapeExtension代碼不叫,爲什麼呢?

回答

0

嘗試與通用路徑處理器更換paths=['/'],就像這樣:

module GrapeExtension 
def get(paths = ['/*'], options = {}, &block) 
    #add log code here 
    super 
end 
end 
+0

似乎不工作,我發現,即使是** **得到葡萄:: API方法將被調用只有一次在網站初始化時,所以我懷疑是否在這裏添加自動使用的日誌是正確的地方@Ivan Zarea – TommyLike 2014-09-29 13:41:59