2012-05-19 205 views
2

我正在編寫一個Google App Engine(Java)應用程序,該應用程序使用OAuth進行身份驗證,從多個REST服務中讀取數據。爲了在我的開發和在線環境中支持OAuth回調,我爲REST服務創建了2個獨立的OAuth密鑰 - 1對127.0.0.1(開發服務器)執行回調,1對我的真實GAE網站URL進行回調。這一切都很好,很開心。Google App Engine設置替代Dev vs Online

目前,以支持這一點,我基本上有一些在我的代碼,這些語句的,任何地方,需要與聯機爲開發不同的價值觀......

String devServer = request.getServerName(); 
if (devServer != null && devServer .equals("127.0.0.1")){ 
    oauthKey = "<my_dev_key>"; 
} 
else { 
    oauthKey = "<my_online_key>"; 
} 

我想知道GAE是否有能力自動替換Development vs Online的不同值。我正在考慮像「設置」文件那樣爲單個設置指定2個不同的值,這樣,當應用上傳到GAE時,它會將所有設置參考替換爲在線值。出於安全考慮,我更希望這些值在上傳時被替換,而不是讓我的開發設置包含在服務器上。

是否有任何替代品能夠在沒有太多手動工作的情況下實現類似的結果,而且每次我希望將新版本上傳到GAE?

+1

不是您正在尋找的解決方案,但[ServerEnvironment](https://developers.google.com/appengine/docs/java/runtime#The_Environment)可能有幫助 –

回答

3

我會保存在使用類似Maven和其Profile功能來建立任何特定的環境中的神器不同Properties文件的憑據。

查看Google App Engine Maven插件的this project

+1

感謝您的支持,看起來可能是一步在正確的方向 – wattostudios