JSON dosyasını local serverde çalıştırmak ve javascript ile erişmek

Merhaba.bilgisayarimda bulunan data.json doyasina js ile erismek istedim.sonra ogrendim ki js ile erismek icin json dosyasi bir server uzerinde olmali.bende serveri calitirmak icin data.json dosyasini bulundugu dizine gecip su komutla: python3 -m http.server serveri calistirdim.adres cubuguna http://127.0.0.1:8000/data.json yazince server duzgun calisiyor ve json datasida gorunuyor.ama js ile bu dosyaya su sekilde erismeye calisdigimda:

        var request = new XMLHttpRequest()
        request.open("GET","http://127.0.0.1:8000/data.json",true)
        request.onload = function () {
            var data = JSON.parse(this.response)
            console.log(data);
        }

nedense hic bir cikti alamiyorum.sorun nerede?serverimi yanlis calistiriyorum,js ile yanlismi erisiyorum yoksa genel olarak yanlis bir yolmu izliyorum?yardimci olursaniz sevinirim.

ek bilgi:
gonderdigim istekler serverde gorunmuyor.yada istek gonderilmiyor.galiba sorun javascript tarafinda.

Kodlar olmadan yardımcı olamaz kimse.

neyin kodu? js kodunu yukarida paylasdim.json dosyasindaki veriyeyse gerek yok diye dusunuyorum.
ama yinede ekleyeyim:

{
    "isim":"abdullah",
    "yas":16
}

Yok,client falan…

Sayfa konsolunda (ctrl+shift+k) bir hata var mi?

CORS olabilir, isleyecek sayfayi da json’in yanina koyup oradan calistirmayi deneyebilirsin en kolay workaround olarak.

Hayir.datayi konsola yazdirmaya calisiyorum ve hic bir cikti alamiyorum.

hayir istedigim gibi calismiyor.ornegin json dosyasina veri gonderiyorum,tamam gonderildi ama sayfayi yeniledigimde ekledigim veri gidiyor(dogal olarak)

Dosyalar okunan veya yazilan isimli byte dizileri, dosyaya veri gondermek nedir bilmiyorum.

Nereden, nereye veri gidiyor? Eklenen veri neye benziyor?

Hangi sayfadan bahsediyoruz bu arada?

console.log("hede") gibi bir komutun ciktisi konsolda gozukmuyorsa konu basligiyla alakasiz cok daha buyuk bir problem var demektir.

kusura bakmayin.dosyaya yazmak demek istemistim.

javascriptde bulunan json verisini .json dosyasina yazmak.

hayir konsolda bir sorun yok.

Server tarafinda dosyaya yazilan bir sey client sayfayi yenilediginde kayip mi oluyor? Anlamadim.

Client tarafinda dosya olmadigini, URL ve istekler oldugunu hatirlatarak tekrar sormak isterim ne denmeye calistigini.

Bunun icin javascript’te bulunan JSON verisini oncelikle dosya sistemine erisimi olan sunucuya yollamak lazim. Bunun icin bir HTTP POST istegi kullanmayi tavsiye ediyorum.

O zaman gerekli yerlere console.log ekleyerek neyin calisip neyin calismadigini belirleyebiliriz aslinda.

Bu arada su anda gordum, once istek yapiliyor (open), sonra istek yapildiginda ne olacagi belirtiliyor (onload).



durum boyle hocam.POST metoduylada erismeyi denedim ama degisen bir sey yok

POST’u server tarafinda handle etmek lazim.

CORS problemi varmis.

Son yazdigim sorun da duruyor.

o nasil olacak hocam?

nasil coze bilirim?biraz arastirdim bulamadim.

Bu arada su anda gordum, once istek yapiliyor (open), sonra istek yapildiginda ne olacagi belirtiliyor (onload). dememismiydiniz?dediginiz gibi degilmi zaten?

Istek yapildigi noktada istekten sonra calisacak kod tanimli olmadigi icin yanlis su anki sira.

CORS icin extension’lar filan var ama en kolayi sayfayi da sunucudan sunmak.

POST’u http.server desteklemiyor mu?

hayir hocam ben internetteki apilerden json verisini bu sekilde cekiyorum ve calisiyor.peki asagidaki, istekten sonra yapacagi is degilmi?(request.onload)

destekliyor.

hocam .json dosyami apache serverda calistirip oyle erismeyi denedim.ama deyisen bir sey yok.

baslikta Access-Control-Allow-Origin diye bir seye izin vermem gerekiyormus calismasi icin.(bahsettigniz CORS).ama buna javascriptde nasil izin verecegimi bulamadim.

Dosya sistemine erisimi olmayan sunucu var mi?

cozdum hocam.ilk once npmden sudo npm install http-server -g komutuyla bir http server indirdim.daha sonra bu serveri cors parametresiyle calistirdim:http-server -p 3000 --cors .bu kadar(not:istegi post metoduyla yaparsaniz calismaz.get ile calisiyor.).ve calisti.desteginizde dolayi cok tesekkur ederim.ama artik daha buyuk bir sorun var.lokalde bulunan json dosyasina veri yazmak.bu konuda da yardimci olan olursa cok sevinirim.

Tarayıcıda çalışan javascript bulunduğu cihazın dosyalarına erişemez. Eğer amacınız sunucuda dosya kaydetmek ise basit bir POST isteği yeterli olur diye tahmin ediyorum.