Opened 6 years ago
Closed 6 years ago
#1672 closed enhancement (wontfix)
expose ngx_http_v2_push_resource in ngx_http_v2_filter_module
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | critical | Milestone: | |
Component: | other | Version: | 1.15.x |
Keywords: | Cc: | ||
uname -a: | |||
nginx -V: |
nginx version: nginx/1.14.0
built by gcc 4.8.5 (Ubuntu 4.8.5-4ubuntu2) built with OpenSSL 1.0.2p 14 Aug 2018 TLS SNI support enabled configure arguments: --prefix=/home/tylerli/workspace/nginx/../nginx-install --with-http_ssl_module --with-http_v2_module --with-openssl=../thirdparty/openssl-1.0.2p --with-debug |
Description
At now, nginx server push is implemented in header filter module, and no api is exposed.
As a result, http2_push can only push resources to the uri where http2_push config is located.
But we want to hold a request of one uri, "POLL_REQ", during the connection lifetime. Another uri accept data from backend. Then push the received data to POLL_REQ as mentioned above. On POLL_REQ stream, only PUSH_PROMISE frame is sent from the server side, no HEAD or DATA frame would send. https://developer.amazon.com/zh/docs/alexa-voice-service/manage-http2-connection.html
Could you expose the ngx_http_v2_push_resource api so that I can implement the AVS mechanism? I am not sure about whether it is reasonable.
Sorry for my poor english.
There are no plans to made this API public. See detailed responses to the previous requests in this threads:
http://mailman.nginx.org/pipermail/nginx-devel/2018-February/010847.html
http://mailman.nginx.org/pipermail/nginx/2018-November/057119.html
Note well that AVS does not seem to use HTTP/2 push at all. As per the documentation linked, it returns a stream with data instead.