您的位置:首页 > 运维架构 > 网站架构

Hybrid架构下,加载本地H5资源后,如何处理Ajax请求?

2017-05-09 13:41 351 查看
希望在app中打开H5页面能达到Native那样的速度,当然感觉不太可能,但两者速度越接近越好。

网上查了资料,有种方法是将网页资源嵌入到app中,打开时相当于加载本地资源。

参考:阿里巴巴(中国站)用户体验设计部博客

里面有段是这么描述的:

别忘了,我们是 Hybrid App,还可以充分利用 Native 层的强大能力,所以抛弃mainfest吧,让 Native 来帮助 Html5 应用缓存静态资源文件。总体思路是:

1、Html5 应用首次启动时,调用 Native 提供的加载资源文件专用的 Device API 来请求所需的资源文件,由 Native 层发出真正的资源请求,并将请求结果缓存在手机的SD卡上。当然,这里完全可以优化为一次 zip 包请求,因为 native 能够提供强大的解压能力。

2、H5 应用再次启动时,所有的静态资源都是通过 Device API 读取本地缓存,无需再走网络。

3、H5 应用出现静态资源更新时,在应用启动时首先通过 Device API 加载需要更新的文件,并更新本地缓存,其它未变更文件继续走缓存。

现在的问题:

1、加载的是本地的资源,那么本地页面上Ajax请求到后台取数据如何处理?

2、用jsonp能解决吗?优缺点?

3、也问过阿里的人员,他们的回答是采用了“虚拟域”的做法,app会将请求拦截做一些处理。但不是具体负责人,技术细节不是很清楚。有没有人知道类似这样的处理方法?

ps:技术不精,上面的描述如有问题,轻吐槽哈。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: