3

I have a server endpoint that supports both HTTP/1.1 and HTTP2. For testing purposes, I want to try downloading content from the endpoint with both HTTP/1.1 and HTTP2 connections, possibly at the same time.

When I request data from the endpoint with an XMLHttpRequest, it automatically uses HTTP2, without me including the Connection: Upgrade header.

Is there a way to force an XMLHttpRequest to use HTTP/1.1 for the underlying TCP connection? What about other protocols, such as Quic or SPDY?

VLAZ
  • 26,331
  • 9
  • 49
  • 67
Lincoln Bergeson
  • 3,301
  • 5
  • 36
  • 53
  • 1
    The browser decides which protocol it wants to use as an implementation detail of the `XmlHttpRequest` object. You can't force a particular choice from inside your script. – Remy Lebeau Jun 20 '19 at 00:51

2 Answers2

3

No.

From Remy Lebeau's comment:

The browser decides which protocol it wants to use as an implementation detail of the XmlHttpRequest object. You can't force a particular choice from inside your script.

Lincoln Bergeson
  • 3,301
  • 5
  • 36
  • 53
1

You could use IE10. It does not support HTTP/2 and will use HTTP/1.1. If you have IE11 installed, you can force it to behave like IE10 using its F12 developer tools interface.

Eric P Smith
  • 163
  • 7