1

以前に Web フォームに WebAPI を使用したことはありませんが、WebAPI を使用するコードを継承しているため、これがばかげた質問である場合は申し訳ありません。

今日私が行った調査によると、私たちのセットアップはかなり基本的なものに思えます...

  1. global.asax のルート テーブルの定義

  2. ApiController を継承する Controller クラス

  3. jQuery 経由の Ajax 呼び出し

これはすべて、ローカルおよび SSL 証明書を持たない製品サイトで正常に機能します。ただし、サイトには SSL があり、ajax 呼び出しは 404 を生成します。

どんな助けでも大歓迎です。

ありがとう!

リッチ

4

1 に答える 1

0

これは私のために働いた:

移動: IIS -> [サイト] -> ハンドラー マッピング

Web サービスが使用しているパス、つまり " */api/* " にマップされた Handler があることを確認する必要があります。私のプロジェクトには、そのようなパスを持つ「静的ファイル」と呼ばれる既存のハンドラーがありました。StaticFileModule、DefaultDocumentModule、および DirectoryListingModule を使用しました。

「リクエストの制限」で、プロジェクトに適用するルールを設定します。私の設定:

マッピング - 「リクエストがマップされている場合にのみハンドラーを呼び出す:」をチェックします - 「ファイルまたはフォルダー」をマークします

動詞 - 「すべての動詞」

アクセス - 「スクリプト」(デフォルト)

リクエスト制限の詳細: http://technet.microsoft.com/en-us/library/cc730969(v=ws.10).aspx

これらの設定は、ほとんどの場合、サイトの Web.config で設定できます。それが機能するようになったら、調査結果を投稿します。

于 2014-11-16T03:28:59.837 に答える