در این کد لبه، ببینید که چگونه منبع مشابه هنگام واکشی منابع کار می کند.
راه اندازی: واکشی صفحه از همان مبدا
نسخه ی نمایشی در https://same-origin-policy-fetch.glitch.me
میزبانی می شود. این صفحه وب ساده از fetch
برای بارگیری منبع از https://same-origin-policy-fetch.glitch.me/fetch.html
استفاده می کند. از آنجایی که index.html
و fetch.html
منشا یکسانی دارند، باید 200
را در پیش نمایش زنده مشاهده کنید.
1. واکشی صفحه از مبداهای مختلف
سعی کنید URL واکشی را به https://www.google.com
تغییر دهید. در پیش نمایش زنده چه می بینید؟
مرورگر باید درخواست واکشی را مسدود می کرد زیرا شما منبعی از منبع دیگری درخواست کرده اید. این بدان معناست که مهاجم نمی تواند منابع متقاطع را بخواند حتی اگر کنترل مرورگر کاربر را به دست گرفته باشد.
2. یک منبع متقاطع واکشی کنید
URL واکشی را به https://api.thecatapi.com/v1/images/search
تغییر دهید. در پیش نمایش زنده چه می بینید؟
URL واکشی منبع دیگری است، اما باید کد وضعیت 200 را ببینید. چرا؟ برنامه های کاربردی وب مدرن اغلب برای بارگیری اسکریپت های شخص ثالث یا پرس و جو از یک نقطه پایانی API از منابع متقاطع درخواست می کنند. برای تطبیق این موارد استفاده، مکانیزمی به نام CORS (به اشتراک گذاری منبع متقاطع) وجود دارد تا به مرورگر بگوید که بارگیری منبع متقاطع مجاز است. برای اطلاعات بیشتر در مورد CORS به اشتراک منابع متقاطع به صورت ایمن مراجعه کنید.