Questions tagged [http-1.1]

HTTP 1.1 is the latest version of the http protocol. It includes more stringent requirements than HTTP/1.0 in order to ensure reliable implementation of its features.

The Hypertext Transfer Protocol () is an application-level protocol for distributed, collaborative, hypermedia information systems. HTTP has been in use by the World-Wide Web global information initiative since 1990.

HTTP/1.0 does not sufficiently take into consideration the effects of hierarchical proxies, caching, the need for persistent connections, or virtual hosts. In addition, the proliferation of incompletely-implemented applications calling themselves "HTTP/1.0" has necessitated a protocol version change in order for two communicating applications to determine each other's true capabilities.

The new version of the protocol (HTTP 1.1) includes more stringent requirements than HTTP/1.0 in order to ensure reliable implementation of its features.

Here are some of the new features introduced with HTTP 1.1:

  • Host field: HTTP 1.1 has a required Host header by spec.
  • Persistent connections: HTTP 1.1 also allows you to have persistent connections which means that you can have more than one request/response on the same HTTP connection.
  • OPTIONS method: HTTP/1.1 introduces the OPTIONS method. An HTTP client can use this method to determine the abilities of the HTTP server. It's mostly used for Cross Origin Resource Sharing in web applications.
  • Caching: HTTP 1.1 expands on the caching support a lot by using something called 'entity tag'. If 2 resources are the same, then they will have the same entity tags.
  • HTTP 1.1 also adds the If-Unmodified-Since, If-Match, If-None-Match conditional headers.
  • 100 Continue status: there is a new return code in HTTP/1.1 100 Continue. This is to prevent a client from sending a large request when that client is not even sure if the server can process the request, or is authorized to process the request. In this case the client sends only the headers, and the server will tell the client 100 Continue, go ahead with the body.
  • Digest authentication and proxy authentication
  • Extra new status codes
  • Chunked transfer encoding
  • Connection header
  • Enhanced compression support

Resources:

207 questions
0
votes
1 answer

How to check wether http2 is implemented and working on my website?

I want to check whether http/2 is implemented on my website or not. When I check through https://tools.keycdn.com/ it says http2 is implemented but the typing curl -I in cmd gives the ouptut: HTTP/1.1 200 OK Date: Fri, 25 Jan 2019 17:02:45…
0
votes
1 answer

What is the best library for HTTP/1.1 persistent("Connection: Close") connections in Java?

I must choose a library for connecting to http endpoint. Http connection version is "1.1". Server sends data to client continuously after opening the connection. So, connection is persistent; "Connection: Close". For this purpose, Which library is…
0
votes
1 answer

Parslet: How to Buffer/parse incrementally data

I'm writing an HTTP/1 response parser with parslet. It works, but only when I send the full payload. I have smth like this: rule(:response) { response_line >> crlf >> header.repeat.as(:headers) >> crlf >> data.as(:data) } root…
ChuckE
  • 5,610
  • 4
  • 31
  • 59
0
votes
1 answer

In HTTP/1.1 are connections shared across multiple chrome tabs to the same origin?

In HTTP/2, one connection is used per origin. In HTTP/1.1 are connections shared across multiple chrome tabs to the same origin?
priyankatanvani
  • 173
  • 1
  • 12
0
votes
1 answer

Netty HTTP 1.1 Pipelining Support

I need to send multiple async requests to a rest server through the same connection and get them executed in FIFO order, I think HTTP 1.1 pipelining is just perfect for this. I found some related issues on Netty but I couldn't find much on their…
Mattx
  • 65
  • 6
0
votes
1 answer

PayPal TLS 1.2 and HTTP/1.1 Upgrade Issue

I keep getting warnings from PayPal about TLS 1.2 and HTTP/1.1 Upgrade, saying that an update is needed. However, I've ran the following tests: HTTP/1.1 Test $ curl --head mywebsite.com HTTP/1.1 302 Moved Temporarily Server: nginx/1.9.2 Date: Thu,…
Craig
  • 139
  • 1
  • 2
  • 12
0
votes
1 answer

How to use OPTIONS HTTP method in Spark framework?

I am having difficulty understanding how can I return all methods that are allowed on my HTML page or on my embedded jetty-9.4.4.v20170414 server using Spark framework? Java Spark code: options("/panel/data/options", (request, response) -> request …
0
votes
1 answer

Current version of Http 1.1 reference documentation

I am working on my graduate thesis about RESTful web services in Spark micro framework and I want to talk a little about HTTP 1.1 protocol specifically HTTP methods. Problem is I am a bit confused with the reference documentation cause till now in…
Obito
  • 5
  • 4
0
votes
1 answer

Web page waiting indefinitely for web server to respond

I am writing a simple web server in Java with the help of ServerSocket and Socket APIs provided by JDK. I have a WebServer class(a 'Thread') which has a ServerSocket serverSocket = new ServerSocket(8086); and blocks on Socket clientSocket =…
Harsh Chiki
  • 79
  • 1
  • 10
0
votes
1 answer

Is there a way for an HTTP/1.1 only client to communicate with a server that seemingly defaults to HTTP/2 WITHOUT updating the client?

I am trying to connect to a server that defaults to HTTP/2 with Apach Http-Components 3.4, which is not HTTP/2 compatible. I see here that a client can request HTTP/2 from the server via the Upgrade header. Is there a way to request HTTP/1.1 from…
0
votes
1 answer

GovTalk / HMRC Transaction Engine Http 1.1 POST error

I appreciate this is a little bit niche, but I thought I would ask anyway. I'm writing a small c# application to utilise the HMRC web portal and electronically submit VAT returns in XML format. According to the HMRC specification it is just a simple…
Davy C
  • 639
  • 5
  • 16
0
votes
1 answer

How to call HTTP multipart/related request in PHP?

From this site, there is a HTTP request I want to call. (not exactly the same for the credentials and content, but the structure are the same) It is used for sending MMS. POST [XXX] HTTP/1.1 Host: europe.ipx.com Content-Type: multipart/related;…
cytsunny
  • 4,838
  • 15
  • 62
  • 129
0
votes
0 answers

run nginx --with-http_v2_module, why www.domain.com is h2 protocol, but domain.com is http1.1 protocol?

configuration nginx --with-http_v2_module, and then access the url www.domain.com is h2 protocol, ok, perfectly! but why domain.com is http1.1 protocol? there are details: [root@iZ941gs04jwZ ~]# nginx -V nginx version: nginx/1.12.0 built by gcc…
Sodino
  • 587
  • 6
  • 16
0
votes
1 answer

HTTP POST request returns 400, SERVER_PORT_SECURE not used

I am attempting to send a POST request from an embedded device to my webserver, yet the webserver returns error 400 to me. This is the request I am sending to port 80 of my server: POST /api_back.php HTTP/1.1 Host:…
0
votes
0 answers

Im trying to download webpage or files from url using socket but it run really slow at EOF

result = s.recv(8192) num_bytes_recv += len(result) index = result.find('\r\n\r\n') result_wo_header = result[index+4:] data = "" with open(file_name, 'wb') as f: data+=result_wo_header …
Madwolf
  • 51
  • 2