2016-08-05 17 views
0

對於我的項目,我使用外部API。在每次調用時,API都提供一個令牌,以便下一次請求數據時不必轉儲所有數據,只需轉儲更新。我希望這些數據在開發中的不同服務器會話之間保持不變。在我的Mac OS上,我使用redis來做這些事情,並將這些標記存儲在密鑰下,我目前正在windows上開發,並且不能安裝任何類型的redis替代方案,對於這些方案,最佳做法是什麼?我應該將這些信息存儲在數據庫中還是有更高效和更清潔的方式?用於在類似於redis的會話之間存儲信息的替代方案

+0

如何安裝運行Linux的虛擬機? – Aetherus

+0

如果您需要一些快速和骯髒的持久性,請查看PStore(http://ruby-doc.org/stdlib-2.3.1/libdoc/pstore/rdoc/PStore.html)。 – mwp

+0

Aatherus我對安裝方面有點限制,因爲我幾乎沒有任何權限,我正在使用的電腦,是的..因此,我寧願使用可用的工具槽紅寶石和寶石,一見鍾情PStore看起來像一個很好的解 – Reinier

回答

0

基於MWP的答案,我用它爲我的作品如下:

需要「的PStore」我的模塊的頂部,我寫了兩個方法,一個保存令牌和一個檢索令牌:

def get_event_token 
    tokens = PStore.new("tokens.pstore") 
    event_token = "" 
    tokens.transaction(true) do 
     event_token = tokens.fetch(:event_token).to_s 
    end 
    event_token 
end 

def store_event_token(event_token) 
    tokens = PStore.new("tokens.pstore") 
    tokens.transaction do 
     tokens[:event_token] = event_token 
    end 
end 

對於檢索確保您定義的事務之外的event_token,因爲某些原因,交易的範圍似乎僅限於交易