問題: localhost:xxxx/Home/TestPage から ApiController を呼び出そうとしていますが、要求された URL: /Home/api/Test が見つからないという 404 を取得します。
Index.cshtml ページからこの呼び出しを行うと、問題なく動作し、localhost:xxxx/api/Test に移動して目的の JSON を確認できます。~/ を MapHttpRoute routeTemplate に追加しようとしましたが、例外がスローされます。
質問: URL 要求から /Home を削除するにはどうすればよいですか?
もう 1 つの例は、ページ localhost:xxxx/People/TestPage にいて、localhost:xxxx/api/Hobbies、localhost:xxx/api/Pets、locahost:xxx/api/Vehicles などの複数の URI にアクセスしたい場合です。これを処理するためにカスタム ルーティングを設定するにはどうすればよいですか? 現在、デフォルトのルートでは、/People/api/Hobbies などが見つからないというエラーが表示されます。
解決策(おそらく) : routeTemplate: "{page}/api/{controller}/{id}" を使用してカスタム MapHttpRoute を作成しましたが、機能しますが、その理由と、これが良い方法であるかどうかは完全にはわかりません。