Aynı Kaynak Politikası ve Getirme istekleri

Mariko Kosaka

Bu kod laboratuvarında, kaynaklar getirilirken aynı kaynak özelliğinin nasıl çalıştığını öğrenin.

Ayarlama: Sayfayı aynı kaynaktan getirme

Demo, https://same-origin-policy-fetch.glitch.me adresinde barındırılır. Bu basit web sayfası, https://same-origin-policy-fetch.glitch.me/fetch.html kaynağından kaynak yüklemek için fetch kullanır. index.html ve fetch.html aynı kaynağı paylaştığı için canlı önizlemede 200 gösterilir.

1. Sayfayı farklı bir kaynaktan getirme

Getirme URL'sini https://www.google.com olarak değiştirmeyi deneyin. Canlı önizlemede ne görüyorsunuz?

Farklı bir kaynaktan kaynak istediğiniz için tarayıcı, getirme isteğini engellemiş olmalıdır. Bu, saldırganın kullanıcının tarayıcısının kontrolünü ele geçirmiş olsa bile kaynakta farklı olan kaynakları okuyamayacağı anlamına gelir.

2. Kaynaklar arası kaynak getirme

Getirme URL'sini https://api.thecatapi.com/v1/images/search olarak değiştirmeyi deneyin. Canlı önizlemede ne görüyorsunuz?

Getirme URL'si farklı bir kaynaktır ancak 200 durum kodunu görmelisiniz. Neden? Modern web uygulamaları, üçüncü taraf komut dosyalarını yüklemek veya bir API uç noktasını sorgulamak için genellikle kaynakta çapraz kaynaklar ister. Bu kullanım alanlarına uyum sağlamak için tarayıcıya, merkezler arası kaynak yüklenmesine izin verildiğini bildiren CORS (Merkezler Arası Kaynak Paylaşımı) adlı bir mekanizma vardır. CORS hakkında daha fazla bilgi için Kaynaklar arası kaynakları güvenli bir şekilde paylaşma başlıklı makaleyi inceleyin.