2011-06-28 47 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

相关问题