我们在前面已经配置SSL和开启了HTTP/2(https://blog.csdn.net/wiselyman/article/details/106121219),我们只需要在控制器方法里的参数使用javax.servlet.http.PushBuilder
对象即可使用HTTP/2的推送技术。PushBuilder
主动将资源推送到客户端(浏览器);这个特性也需要浏览器的支持,当然现代浏览器绝大部分都支持这个功能。
HttpBuilder
属于builder模式,主要方法有:
path
:中间操作,指定需推送的资源的地址;addHeader
:中间操作,设定资源的内容类型;push
:终结操作,执行推送动作。
HttpBuilder
推送的服务端资源是通过ResourceHttpMessageConverter
来确定媒体类型和转换的,所以在Spring MVC下我们是不需要显示指定媒体类型的。
我们在static
目录下新建push
目录,并加入下面的资源:
这里面重要的push.html
,它是服务端推送的终点。
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>HTTP/2 Push Demo</title>
<link rel=