prelink 预连接
百度App 11.26及以上版本开始支持
prelink
prelink 简介
小程序首屏的渲染,通常依赖某个网络请求返回的数据,我们将这个请求定义为主请求。大部分情况下,主请求的速度提升,渲染速度也会随之提升。
所以,小程序框架提供了prelink
机制,用于提前和业务服务器建立网络连接,使随后的主请求可以复用该连接,提升请求速度。
- 使用
prelink
前后对比
通过上面的对比可以看出,在配置了prelink
时,框架会在加载业务代码app.js
的同时发送一个预连接请求。在发送主请求时,可以直接复用该连接,达到减少主请求时长的目的。
如何使用 prelink
正确使用prelink
,需要做以下两个操作:
1.在开发者平台配置prelink
信息
进入开发者平台,在【开发管理】的【设置】点击【开发设置】。
找到【
prelink
的合法地址】,点击【修改】。在弹出的窗口中,找到【
prelink
的合法地址】,输入prelink
地址后点击【保存并提交】。该接口的域名需要在
request
合法域名的名单内。支持配置多个预连接接口,对不同域名发起预连接。
请优先设置与
核心业务
(如 请求最频繁、功能最重要)相同域名的接口。域名相同的接口只需要配置一个,如
https://demo.com/getList
与https://demo.com/getPage
只需保留一个。该接口需要支持
HEAD
请求,其他规则(如域名校验、UA、REFERER 等)和request
保持一致。该接口的响应速度和稳定性均会影响
prelink
的效果,为了尽可能的减少预连接请求的响应时长,建议配置静态接口,并保证接口的稳定性。
常见问题及实例
错误提示文案 | 说明 |
---|---|
prelink域名必须存在于服务request域名中,请检查服务器request域名配置 | 配置prelink前,需先配置服务器域名,如服务器域名配置https://www.baidu.com prelink配置 https://www.baidu.com/smartapp |
prelink地址访问不通 | 请求prelink地址后,3秒未获得响应 |
prelink地址访问错误 | 请求prelink地址后http状态码为4xx或5xx,检查地址是否支持head请求 |
2.在小程序业务代码中,尽可能前置需要复用预创建连接的请求(一般为核心业务
请求)。
如何测试 prelink
在百度 App 中,提供了prelink
的测试工具,用于开发者验证配置的正确性,开发者可以用“小程序预览包”参照下图中的流程进行测试验证。
小程序线上版本不会显示性能面板