JavaScript AJAX erişim hatası

Katılım
5 Mart 2014
Mesajlar
5.701
Makaleler
12
Çözümler
44
Yerel ağda kod yazıyorum. Bu hatayı alıyorum. Bunun bir çözümü var mı? Nasıl erişime açabilirim?
Kod:
Access to XMLHttpRequest at file from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, chrome-untrusted, https.
 
CORS ihlali yapıyor. Farklı adresler üzerinden erişim sağlamaya çalışıtığında tarayıcı otomatik olarak isteği blokluyor. Çözümü ise istek attığın tarafta Origin'e izin vermen gerekiyor. PHP ise aşağıdaki şekilde yapmalısın.
PHP:
header("Access-Control-Allow-Origin: *");
 
CORS ihlali yapıyor. Farklı adresler üzerinden erişim sağlamaya çalışıtığında tarayıcı otomatik olarak isteği blokluyor. Çözümü ise istek attığın tarafta Origin'e izin vermen gerekiyor. PHP ise aşağıdaki şekilde yapmalısın.
PHP:
header("Access-Control-Allow-Origin: *");
Herhangi bir sunucu yok. HTML dosyası üzerinde yapıyorum. Bu şekilde mümkün değil mi?
 
Yaptığın işlemi tam olarak belirtirsen ona göre yardımcı olalım. Standardın dışına da çıkmamış oluruz.
1623059494165.png

Technopat bu kodu kabul etmiyor, görsel olarak atıyorum. Örnek olarak bu kodu yazdım. Güvenlik hatası verdi. Google yerine bir dosya olsa da aynı durum mevcut.
 
Tarayici degil backend bloklar bunu.
AJAX istegi attigin adresteki backend header daki origin ile uyusmazligi yakalayip istegi reddeder.
Eger backendi sen yaziyorsan buna izin verebilirsin.
Alternatif olarak attigin isteklerdeki origin header ini runtime da modifiye edebilirsin, browser uzerinden bunu yapan extension'lar var.
 
Tarayici degil backend bloklar bunu.
AJAX istegi attigin adresteki backend header daki origin ile uyusmazligi yakalayip istegi reddeder.
Eger backendi sen yaziyorsan buna izin verebilirsin.
Alternatif olarak attigin isteklerdeki origin header ini runtime da modifiye edebilirsin, browser uzerinden bunu yapan extension'lar var.
1623071605413.png

Yine aynı şey. Ben bunu anlatmaya çalışıyorum ama sen Google'dan bahsediyorsun. Diyorum ki nasıl yerelde çalışacak?
 
Bir tarayıcı çalıştırdığın zaman aslında bir sunucu çalıştırırsın. Technopat'a istek attığında da sunucudan-sunucuya istek atmış olursun.

Şimdi tarayıcıyı bir sunucu olarak al. Beraberinde Windows Masaüstü içerisindeki Dosya Sistemi Yöneticisi'ni de bir sunucu olarak düşün. Sen Tarayıcı adlı sunucudan, Windows'un Dosya Sistemi Yöneticisi sunucusuna ajax isteği atmaya çalışıyorsun.

Özetle senin yapmaya çalıştığın işlem C:\Windows\System32\bilmemne.sys dosyasına ajax isteği atmak gibi bir durumu ortaya çıkarıyor. Yaptığın işlem sunucu tarafında biten bir olay olduğuna göre bizim Windows'un Dosya Sistemi üzerinde, ya ilgili komutu bulmamız lazım ya da işletim sisteminin kaynak kodlarına girmemiz lazım :)

Dolayısıyla çabanı tebrik ediyorum ama bu işlem son derece anlamsız. Şu an da yapman gereken bilgisayarında local bir sunucu kurman ve bu yaptığın işlemi, hangi dosya üzerinde yapmak istiyorsan o dosyayı sunucuya atıp işlemlerini de o sunucu üzerinde yapmandır.
 

Technopat Haberler

Geri
Yukarı