HTTP/2 Support
As of IPWorks 2016 HTTP/2 is supported on most platforms. Requests may be made to SSL-enabled HTTP/2 capable servers just as they are made to HTTP/1.1 capable servers.
Enabling HTTP/2 Support
To enable HTTP/2 set the HTTPVersion property of the HTTP component to "2.0". For instance:
HTTP.HTTPVersion = "2.0";
For components that use HTTP but do not expose HTTPVersion as a top level property, set the HTTPVersion configuration setting. For instance:
WebUpload.Config("HTTPVersion=2.0");
Operational Notes
When using HTTP/2 only secure (TLS/SSL) connections are currently supported. Attempting to use a plaintext URL with HTTP/2 will result in an error.
If the server does not support HTTP/2 the component will automatically use HTTP/1.1 instead. This is done in order to provide compatibility without the need for any additional settings. To see which version was used check NegotiatedHTTPVersion after calling a method. The AllowHTTPFallback setting controls whether this behavior is allowed (default) or disallowed.
In Java and .NET HTTP/2 is supported on all platforms. In All other languages HTTP/2 is only supported in Windows 8.1/Windows Server 2012 R2 or later. HTTP/2 is not currently supported on macOS or Unix/Linux.
We appreciate your feedback. If you have any questions, comments, or suggestions about this article please contact our support team at support@nsoftware.com.