2011-06-28 104 views
2

我編寫了一個在iPhone模擬器中運行樂趣的phonegap/jQuery移動應用程序。我的應用程序正在從遠程主機獲取數據。目前我的代碼中有一個「localhost:8080」的jj請求。管理移動(phonegap)應用程序中的服務網址

我知道,這不好。我想改變它。

移動webapps中URL的最佳做法是什麼?

我的意思是,我可以在某種程度上在「構建時間」上使用哪個url?我應該做一些像「如果em使用本地主機」?

由於提前, 基督教

回答

1

我最近部署了一個移動網絡應用程序,這使得各種調用到遠程主機。對我來說,最簡單的解決方案是使用相對URI來處理所有我正在做的遠程調用,並且使用本地反向代理將請求定向到適當的服務器(我在開發vs.生產中將不同的服務器作爲目標)。

我在OS X中使用內置的Apache服務器在本地開發和測試了這個應用程序,因此對此進行配置非常簡單(對於OS X中的本地Web預覽,您修改/etc/apache2/users中的<USER_NAME>.conf文件)。

YMMV,但對我來說這是一個不容忽視的事情,因爲沒有代碼需要修改。

+0

對不起,需要問的是:你的意思是,你發送請求到「真正的」url,但配置你的osx來處理這個url本身?我不確定相關的URL--我的HMTL文件存儲在iphone本地,所以我認爲它不會用相對的URL? – Christian

+0

是的。例如,我會在代碼中定義像這樣的(相對)URL:'/ ajax/somecall.aspx',然後就會變成'http:// 192.168.xx/ajax/somecall.aspx',因爲我是本地運行(192.168.xx是您的本地機器)。然後,我的本地Apache配置使用代理指令來將'/ ajax /'翻譯成'http:// someserver.com/ajax /' – Ben

+0

當HTML頁面作爲iPhone上的應用程序安裝時,它應該如何工作?那麼就沒有可以充當代理的Apache – Christian

相關問題