http2

How to make the .net HttpClient use http 2.0?

↘锁芯ラ 提交于 2019-11-27 05:43:02
问题 I have an asp.net web api hosted on IIS 10 (windows server 2016). When I make a GET request to this from a Microsoft Edge browser, I see that HTTP 2.0 is used in IIS logs 2015-09-20 21:57:59 100.76.48.17 GET /RestController/Native - 443 - 73.181.195.76 HTTP/2.0 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/42.0.2311.135+Safari/537.36+Edge/12.10240 - 200 0 0 7299 However, when a GET request is made through a .net 4.6 client as below, using (var client

Optimizing File Cacheing and HTTP2

若如初见. 提交于 2019-11-27 05:27:37
Our site is considering making the switch to http2. My understanding is that http2 renders optimization techniques like file concatenation obsolete , since a server using http2 just sends one request. Instead, the advice I am seeing is that it's better to keep file sizes smaller so that they are more likely to be cached by a browser. It probably depends on the size of a website, but how small should a website's files be if its using http2 and wants to focus on caching? In our case, our many individual js and css files fall in the 1kb to 180kb range. Jquery and bootstrap might be more.

Why bundle optimizations are no longer a concern in HTTP/2

百般思念 提交于 2019-11-27 04:17:42
问题 I read in bundling parts of systemjs documentation that bundling optimizations no longer needed in HTTP/2: Over HTTP/2 this approach may be preferable as it allows files to be individually cached in the browser meaning bundle optimizations are no longer a concern. My questions: It means we don't need to think of bundling scripts or other resources when using HTTP/2? What is in HTTP/2 which makes this feature enable? 回答1: HTTP/2 supports "server push" which obsoletes bundling of resources. So,

Why do web browsers not support h2c (HTTP/2 without TLS)?

喜夏-厌秋 提交于 2019-11-27 02:34:57
问题 I really search the web, and I can not find the reason why web browsers do not support h2c (http/2 with no TLS). Any idea, appreciated. A little bit clarification http/2 with https uses ALPN (this is called h2). http/2 with http does not need ALPN(this is called h2c), but almost no web browser support it. Why is so? I feel that for many resources, there is no need for confidentiality though authenticity is always good (the digital signature of the http body is not widely supported though

Java 9 HttpClient send a multipart/form-data request

自作多情 提交于 2019-11-27 02:20:38
问题 Below is a form: <form action="/example/html5/demo_form.asp" method="post" enctype=”multipart/form-data”> <input type="file" name="img" /> <input type="text" name=username" value="foo"/> <input type="submit" /> </form> when will submit this form, the request will look like this: POST /example/html5/demo_form.asp HTTP/1.1 Host: 10.143.47.59:9093 Connection: keep-alive Content-Length: 326 Accept: application/json, text/javascript, */*; q=0.01 Origin: http://10.143.47.59:9093 X-Requested-With:

Disabling HTTP/2 / SPDY in HTTP.SYS and IIS in Windows 10

巧了我就是萌 提交于 2019-11-27 02:15:53
问题 When testing on Windows 10 we were seeing lots of browser incompatibilities that I hadn't seen before with earlier Windows versions. Some browsers would work, but others would report ERR_SPDY_PROTOCOL_ERROR. My quick search for this problem showed I was not alone. My app uses WWSAPI and HTTP.SYS with HTTPS (TLS). Does anyone know how to disable SPDY / HTTP/2 in WWSAPI (which is using HTTP.SYS) on Windows 10? I'd also love to get a full up-to-date Windows 10 list of registry settings for HTTP

why Chrome browser doesn't recognize my http2 server?

落花浮王杯 提交于 2019-11-26 23:00:01
I setup my Nginx conf as per Digital Ocean paper , and now http2 is available... But in Chrome (Version 54.0.2840.98 (64-bit)) Dev tool, it's always on HTTP 1/1 : NAME METHOD STATUS PROTOCOL shell.js?v=xx.. GET 200 http/1/1 my server is running Ubuntu 16.04 LTS which supports both ALPN & NPN , and the openssl version shipped with it is 1.0.2g I checked http2 support with this tool site and the result is : Yeah! example.com supports HTTP/2.0. ALPN supported... Also checking with curl is OK $ curl -I --http2 https://www.example.com HTTP/2 200 server: nginx/1.10.0 (Ubuntu) date: Tue, 13 Dec 2016

What is the difference between HTTP/1.1 pipelining and HTTP/2 multiplexing?

坚强是说给别人听的谎言 提交于 2019-11-26 22:56:46
问题 Is it because it requires the responses to be made to client in the order of request that causes the head of line blocking problem in HTTP 1.1? If each request takes exactly an equal amount of time, then there won't be head of line blocking and HTTP 1.1 pipelining and would perform same as that of HTTP/2 multiplexing? (let's say there is no request priority in HTTP/2 requests and disregard other changes of HTTP/2 such as header compression, binary, etc.) 回答1: HTTP/1.1 pipelining still

Why do browser implementations of HTTP/2 require TLS?

房东的猫 提交于 2019-11-26 21:39:52
问题 Why does most modern browsers require TLS for HTTP2? Is there a technical reason behind this? Or simply just to make the web more secure? http://caniuse.com/#feat=http2 回答1: It is partly about making more things use HTTPS and encourage users and servers to go HTTPS. Both Firefox and Chrome developers have stated this to be generally good. For the sake of users and users' security and privacy. It is also about broken "middle boxes" deployed on the Internet that assume TCP traffic over port 80

Performance of AJAX vs Websocket REST over HTTP 2.0?

时光总嘲笑我的痴心妄想 提交于 2019-11-26 20:44:03
问题 What is the real-world performance difference between Websocket vs AJAX over HTTP 2.0? In particular, a project I'm working on requires bidirectional real-time updates, therefore, although nonstandard, if requests are only to be made within the domain, it may be more efficient to conduct REST over Websocket rather than AJAX. However, I'm not sure if currently available information regarding the performance differences hold true in the context of HTTP 2.0. 回答1: Performance should always be