2016-11-14 13 views
0

HttpResponse.PushPromiseHTTP/2 Server Push.을 수행하십시오."미 청구"서버 푸시의 IIS 서버 부작용은 무엇입니까

일반적으로 권장되는 사용 사례는 html 페이지를 게재하는 동안 css, js 또는 이미지와 같은 보조 리소스를 푸시하는 것입니다.

이렇게 초기 요청에서는 html이 반환되고 단일 요청/연결을 통해 다른 모든 리소스가 반환됩니다.

이제 보조 탐색이 발생합니다. 브라우저는 html을 요청하고 서버는 그것을 반환하며 다른 리소스도 보냅니다. 브라우저에는 이미 다른 리소스가 캐싱되어 있습니다. 이러한 리소스는 이제 "Unclaimed push"상태로 이동합니다.

그렇다면 청구되지 않은 푸시가 발생할 때 서버 측은 어떻게됩니까?

답변

0

IIS 구현에서 어떤 일이 발생하는지 확실히 알 수 없습니다.

그러나 일반적인 논리는 브라우저가 푸시 된 스트림 (푸시 약속 프레임)을보고 관심이 없다는 것을 인식한다는 것입니다. 따라서 스트림에 대한 Reset 프레임을 서버에 전송합니다. 서버는이 푸시 된 스트림에 대한 HTTP/2 스트림 상태를 재설정 상태로 만드는 스트림에 대한 재설정 프레임을 수신합니다. 서버에있는 푸시 된 스트림에 여전히 쓰기가있는 경우이 때문에 실패하고 푸시가 종료됩니다.