2016-04-14 14 views
2

MDN Access Cotrol doc'da, GET isteği istek üzerine önceden girilmemiş. Ancak, yanıt üstbilgileri Erişim Denetimi İzin Ver Kimlik Bilgilerini içermiyorsa: true ise, yanıt veren istemcinin yanıtı kullanılamaz. Bu davranış POST için aynı ise (kimlik bilgileriyle Basit POST isteği - İçerik Türü form verileri olabilir) istek de, POST'un sunucu durumunu değiştirebileceği riski olsa da, istemciye yanıt verilemeyebilir. Bu varsayım doğru mu?CORS'te, POST isteği önceden uçurulmuş kimlik bilgileriyle mi?

VEYA POST isteği önceden uçurulmuş kimlik bilgileriyle mi?

cevap

1

Ön kontrol istekleri, sunucunun açık bir şekilde izin vermediği sürece, tarayıcının belirli türden istekleri sunucuya göndermesini engellemeye yöneliktir. Ancak, tarayıcılar CORS desteğinin gelmesinden önce doğrudan sunucuya kimlikli POST istekleri gönderebilir.

"Security Considerations" part of the CORS spec (vurgu benim) diyor ki: Bu şartname (dışında oluşturulan

Basit çapraz menşe istekleri böyle GET veya POST veya komut kaynaklanan çapraz menşe GET istekleri kullanılarak çapraz kökenli formu gönderimleri olarak elemanlar) genellikle kullanıcı kimlik bilgilerini içerir, bu nedenle bu belirtime uygun kaynakları her zaman kimlik bilgileriyle basit çapraz kaynaklı istekler beklemek için hazırlanmalıdır. Başka bir deyişle

, credentialed POST istekleri bir önkontroller olmadan Sunucuya erişilemiyor sahip olma yeteneği yeni bir şey değildir: geliştiriciler tarayıcılar <form> s desteklenen beri gerçekleşmesi mümkün olmuştur. Bu nedenle, kimlik doğrulamalı POST isteklerini içeren Ajax için bir ön kontrol gerektiren bir yarar yoktur.