Asp.net projemdeki bir İçerik klasöründe bir json dosyam var:
<projectName>
\Content
NBCCJr.json
... ve ona erişim kodu:
$.getJSON('~/Content/NBCCJr.json', function (data) {
$.each(data, function(i, dataPoint) {
// Bla
});
});
)
... ancak kod çağrıldığında hiçbir şey olmuyor; tarayıcı konsolu "Kaynak yüklenemedi: sunucu 404 (Bulunamadı) durumuyla yanıt verdi" diyor
Neden bulunamadı? "Tilde vuruş dosya adı" dosyaya giden doğru yol değil mi?
GÜNCELLEME
Ben de tersten vurarak denedim:
$.getJSON('~\Content\NBCCJr.json', function (data) {
... ve aynı sonucu aldı (" Kaynak yüklenemedi: sunucu 404 (Bulunamadı) durumuyla yanıt verdi ")
GÜNCELLEME 2
Sonra bunu önceden yapılmış bir vuruş yapmadan denedim:
$.getJSON('Content/NBCCJr.json', function (data) {
... ve konsolda şu belirsiz mesajı alıyorum:
*GET http://localhost:9702/Content/NBCCJr.json 404 (Not Found) jquery.js:8724
XHR finished loading: "http://localhost:9702/Content/NBCCJr.json".*
Yani bulunmadı ve yine de yüklendi mi?
GÜNCELLEME 3
Değiştirerek tarayıcıda dosyaya gitmeye çalıştığımda:
http://localhost:9702/Default.cshtml
... için:
http://localhost:9702/Content/NBCCJr.json
Vint Cerf, Tim Berners-Lee ve / veya Al Gore'dan bilgilendirici bir WSOD mesajı aldım:
HTTP Hatası 404.3 - Bulunamadı Talep ettiğiniz sayfa, uzantı yapılandırması nedeniyle sunulamıyor. Sayfa bir komut dosyasıysa, bir işleyici ekleyin. Dosyanın indirilmesi gerekiyorsa, bir MIME haritası ekleyin.
GÜNCELLEME 4
JAM sayesinde artık çalışıyor.
Bunu Web.Config'e eklemek zorunda kaldım:
<system.webServer>
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
</system.webServer>