0

私はいくつかの json が必要な Web ページのフロント エンドを作成していますが、バック エンドは作成していないので、map.json というファイルを作成してサーバーに配置しました。

サーバーとしてnode.jsを使用しているため、パブリックフォルダーにjasonという名前の新しいフォルダーを作成し、そこにファイルを保存しました。

今、私はこのファイルに ajax 呼び出しを行っていますが、プログラムはそれを見つけられず、Google chrome からパブリックに移動すると、json フォルダーが表示されません。

サーバーへの ajax 呼び出しであったため、このファイルを表示してアップロードできるようにするには、どうすればよいですか?

これが私のjqueryコードで、public/javascriptのファイルにあります:

  $.ajax('/../json/map.json', {
    cache: false, 
    dataType: "json",           
    success: function(json) { ... code ... }
  });

noje.jsでどのファイルをどのように変更すればよいか本当にわかりません

ありがとう!

4

1 に答える 1

1

使用されている URL パスは技術的に無効です。/存在し..ないドメインのルート パスの親ディレクトリに到達しようとします。

ブラウザは単純に...

$.ajax('/json/map.json', {
    // etc.
});

または、現在のページの URL パスに対する相対パス (例/some/page: ):

$.ajax('../json/map.json', {
    // etc.
});

jasonまた、リクエストに が含まれている間、フォルダの名前は「 」であると述べました/json/...。単なるタイプミスかもしれませんが、一致していることを確認してください。

static()また、ミドルウェアを使用していると仮定すると、URL は指定されたプレフィックスに一致する必要があります (またはプレフィックスがない)。

app.use(express.static(__dirname + '/public'));

// $.ajax('/json/map.json', ...);
app.use('/public', express.static(__dirname + '/public'));

// $.ajax('/public/json/map.json', ...);
于 2013-06-27T00:37:39.207 に答える