2017-03-01 10 views
0

単純なjquery投稿要求を使用して、サーバーからHTMLファイルを読み取ります。ファイルが存在し、URLから直接アクセスできます。私のLinuxサーバでも動作しますが、クライアントのWindowsサーバでは動作しません。なぜこれが起こっているのか?追加のヘッダーを必要とするようなサーバー設定の場合、どうすれば修正できますか?jQuery.post()はIISサーバーで405エラーを返します

コード:

$.post('/ajax/about.html', function(data){ 
    $('.container').html(data); 
}); 

Chromeのコンソール上で見られるような結果:

は、リソースの読み込みに失敗しました:サーバーはhttp://example.com/ajax/about.html

(メソッド許可されていません)405 の状態で応答し

しかし、アドレスバーに直接入力するとファイル 'http://example.com/ajax/about.html'が読み込まれます。 (example.comは例として使用されている偽のアドレスなので、動作しません)

+2

POSTを送信すると、エンドポイントはGETを期待します。 – c69

+0

サーバーにPOSTを知らせる方法は?私はIISに関する経験がありません – BlackPanther

+1

ファイルを読みたい場合は、おそらく$ .get( '/ ajax/about.html')を呼び出すだけです。 – c69

答えて

1

A 405は「メソッドが許可されていません」ので、サーバーがポストを処理しているとは思われません。 静的リソースを取得するには、GETを使用します。

+0

それはまったく静的なリソースではありません。私がやっているのはデザインの部分だけです。残りは、クライアントが作業を行ったことによって行われます。彼らは.Netを使用します。 – BlackPanther

+0

さらに、私はそれが問題だとは思わない。 POSTは静的リソースも取得できる必要があります。 – BlackPanther

+2

A 405は「方法が許可されていません」ので、サーバーが投稿を処理しているとは思わない。 – PeteH

関連する問題