CORS

Skrót od „Cross-Origin Resource Sharing”. CORS umożliwia skryptom na stronach internetowych żądanie zasobów z innych domen. Większość przeglądarek internetowych domyślnie blokuje tego typu żądania ze względów bezpieczeństwa.

Strona internetowa może żądać zasobów z innej domeny — pod warunkiem że żądania pochodzą z kodu HTML. Na przykład sekcja <head> może odwoływać się do zasobów, takich jak pliki CSS, czcionki i pliki JS z innych domen. Przykładami są skrypty Google Analytics, biblioteki jQuery oraz czcionki przechowywane na innym serwerze. Podobnie sekcja <body> może żądać obrazów z CDN-u lub innej domeny. Żądania zasobów z innych źródeł zawarte w kodzie HTML nie wymagają uprawnień CORS.

Gdy skrypt lub element iframe wysyła żądanie do innego źródła, wymagany jest CORS. Na przykład metoda AJAX — która uruchamia się po załadowaniu strony — nie może żądać zasobu z innej domeny. CORS nadpisuje to domyślne ustawienie przeglądarki i umożliwia realizację żądania.

CORS jest implementowany za pomocą nagłówków HTTP „access control”. Administrator serwera może dodawać lub modyfikować nagłówki odpowiedzi, które są wysyłane do przeglądarki klienta podczas uzyskiwania dostępu do strony internetowej. Te ustawienia, które można zastosować do serwerów Apache i IIS, mogą dotyczyć konkretnej witryny lub całego serwera. Poniżej przedstawiono typowe nagłówki żądań i odpowiedzi:

Nagłówki żądań CORS:

  • Origin
  • Access-Control-Request-Method
  • Access-Control-Request-Headers

Nagłówki odpowiedzi CORS:

  • Access-Control-Allow-Origin
  • Access-Control-Allow-Methods
  • Access-Control-Expose-Headers

Przykład CORS

Jeśli skrypt na stronie techterms.com żąda zasobu z witryny sharpened.com za pomocą żądania GET, może wysłać następujące nagłówki żądania:

Origin: https://techterms.com
Access-Control-Request-Method: GET

Aby zezwolić na żądanie, witryna sharpened.com może odpowiedzieć za pomocą następujących nagłówków:

Access-Control-Allow-Origin: https://techterms.com
Access-Control-Allow-Methods: GET

Access-Control-Allow-Origin można ustawić dla konkretnych domen lub użyć symbolu wieloznacznego w postaci gwiazdki (*). Ustawienie symbolu wieloznacznego umożliwia żądania zasobów z innych źródeł ze wszystkich domen, co może stanowić zagrożenie dla bezpieczeństwa. Access-Control-Allow-Methods można ustawić na PUT, POST, DELETE i inne metody, w tym użyć ustawienia z symbolem wieloznacznym (*), które zezwala na wszystkie metody.

Zaktualizowano November 3, 2020 przez Per C.

quizSprawdź swoją wiedzę

A web server response of "Access Forbidden" has what HTTP error code?

A
403
0%
B
404
0%
C
520
0%
D
521
0%
Correct! Incorrect!     View the 403 Error definition.
More Quizzes →

Słownik komputerowy Tech Terms

Definicja CORS na tej stronie jest oryginalną definicją napisaną przez autorów TechTerms.com. Jeśli chcesz odwołać się do tej strony lub zacytować tę definicję, użyj zielonego paska cytowania bezpośrednio poniżej definicji.

Naszym celem jest wyjaśnianie terminologii komputerowej w prosty i zrozumiały sposób. Dążymy do dokładności i prostoty w każdej publikowanej definicji. Jeśli masz uwagi lub chcesz zaproponować nowy termin techniczny, skontaktuj się z nami.

Newsletter Tech Terms

Poszerzaj swoją wiedzę techniczną dzięki naszemu codziennemu lub tygodniowemu newsletterowi! Subskrybuj już dziś i otrzymuj nowe terminy oraz quizy prosto do skrzynki odbiorczej.

Zapisz się do bezpłatnego newslettera TechTerms

Jak często chcesz otrzymywać e-maile?

Możesz wypisać się lub zmienić częstotliwość w dowolnym momencie, korzystając z linków w każdym e-mailu. Pytania? Skontaktuj się z nami.

Uwaga: Newsletter jest wysyłany w języku angielskim.