2015-01-23 20 views
10

W specyfikacji HTTP CORS, jaka jest różnica między 5.6 Access-Control-Allow-Headers a 5.3 Access-Control-Expose-Headers?W specyfikacji CORS protokołu HTTP, jaka jest różnica między nagłówkami zezwalającymi na dostęp i nagłówkami odsłon?

[Pozostawić nagłówków] Nagłówek wskazuje jako części odpowiedzi na prefligtu żądanie, których nazwy pola nagłówka mogą być stosowane w bieżącym żądaniem

UPDATE: ja nadzieję ktoś powiedziałby mi, że jeden z tych nagłówków jest wysyłany na każde żądanie (przed lotem) ... Jednak jest jeszcze inny nagłówek, który jest używany do tego: 5.9 Access-Control-Request-Headers

[Request-Główki] nagłówek wskazuje których nagłówki zostaną wykorzystane w rzeczywistej żądanie jako część prefligtu życzenie

BTW, kocham jak oni (W3C) ostrożnie sformułowane 5.9 tak, że nagłówek prośba może mieć pole o nazwie _Something_ Request Header.

Jestem całkowicie zagubiony w specyfikacji, czy istnieje schemat, w którym mogę lepiej zrozumieć ten proces?

Odpowiedz

11

Access-Control-Allow-Główki

Używane w odpowiedzi na wniosek inspekcji wstępnej, aby wskazać, które nagłówki HTTP może być używany podczas dokonywania faktycznej żądania.

Access-Control-Expose-Główki

Ten nagłówek pozwala serwerze białej listy nagłówków, że przeglądarki mają dostęp. Na przykład:

Źródło: https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS

+4

Tak więc, w zasadzie są one źle nazywane. Pierwsza z nich to nagłówki żądań, a druga to nagłówki odpowiedzi widoczne dla skryptów, prawda? –

+0

[Dokumentacja MDN] (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers) stwierdza: _ "Odpowiedź Access Control-Allow-Headers nagłówek jest używany w odpowiedzi na żądanie inspekcji wstępnej, aby wskazać, które nagłówki HTTP będą dostępne za pośrednictwem Access-Control-Expose-Headers podczas tworzenia faktycznego żądania. "_ Czy to jest nieprawidłowe? –

0

prostu do wyjaśnienia komentarz powyżej, że są one źle nazwane, nie są one źle nazwane.

Służą one innym funkcjom.

  • Kontrolki kontroli dostępu określają, które nagłówki mogą zmieniać stan serwera.
  • Podczas head-access-expose-headers dostępna jest metoda get getResponseHeader(), która zwraca wartość konkretnego nagłówka odpowiedzi. Podczas żądania CORS metoda getResponseHeader() ma dostęp tylko do prostych nagłówków odpowiedzi. Aby uzyskać dostęp do innych nagłówków, musisz go tutaj podać.
+0

Służą one różnym funkcjom, ale ich nazwy są bardzo podobne. Są zdecydowanie źle nazywane. –

Powiązane problemy