1. ホーム
  2. jquery

[解決済み] jsonファイルが見つからないのですが?

2023-05-13 13:32:30

質問

asp.netプロジェクト内のContentフォルダーにjsonファイルがあります。

<projectName>
    \Content
        NBCCJr.json

...そして、それにアクセスするためのコード。

$.getJSON('~/Content/NBCCJr.json', function (data) {
    $.each(data, function(i, dataPoint) {
        // Bla
      });
  });
)

...しかし、コードが呼び出されると何も起こりません。ブラウザのコンソールには、"Failed to load resource: the server responded with a status of 404 (Not Found)"と表示されます。

なぜ見つからないのでしょうか。ファイルへの正しいルートは "tilde whack filename" ではありませんか?

最新情報

また、"whacks"を逆にした状態でも試してみました。

$.getJSON('~\Content\NBCCJr.json', function (data) {

...そして同じ結果を得ました(" リソースの読み込みに失敗しました: サーバーは 404 (Not Found) というステータスで応答しました。 ")。

アップデイト2

次に、このように前置詞のないワックを試してみました。

$.getJSON('Content/NBCCJr.json', function (data) {

...そして、コンソールにこのような曖昧なメッセージが表示されます。

*GET http://localhost:9702/Content/NBCCJr.json 404 (Not Found) jquery.js:8724
XHR finished loading: "http://localhost:9702/Content/NBCCJr.json".*

見つからなかったのに、とりあえず読み込んだということですか?

アップデイト3

変更してブラウザでファイルに移動しようとしたところ。

http://localhost:9702/Default.cshtml

...する。

http://localhost:9702/Content/NBCCJr.json

Vint Cerf、Tim Berners-Lee、および/またはAl Goreから、有益なWSODメッセージを受け取りました。

HTTP エラー 404.3 - 見つかりません。 要求されたページは、拡張機能の設定により提供できません。ページがスクリプトである場合、ハンドラを追加します。ファイルをダウンロードする必要がある場合は、MIME マップを追加してください。

アップデイト4

JAMさんのおかげで、動作するようになりました。

Web.Configに追加する必要がありました。

  <system.webServer>
    <staticContent>
      <mimeMap fileExtension=".json" mimeType="application/json" />
    </staticContent>
  </system.webServer>

どのように解決するのですか?

を削除してみてはいかがでしょうか? ~ ?

のように。

$.getJSON('/Content/dumboJr.json', function (data) {
    $.each(data, function(i, dataPoint) {
        // Bla
      });
  });
)

IISがJSONファイルを提供できるようにするには、web.configに以下を追加してみてください。

<staticContent>
    <mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>