2

ASP.NET MVC 4 Web API を呼び出すには、次の規則を使用してそのサービスを呼び出します

 $.getJSON("api/products/", ...

サイトの URL が などのルートであればhttp://localhost:10234、すべて問題ありません。

しかし、URL が になるhttp://localhost/SomeAppと、ajax 呼び出しは失敗しました。

.getJSON は、実際には .getJSONhttp://localhost/api/productsの代わりに呼び出しますhttp://localhost/SomeApp/api/products。この場合、場所を修正するにはどうすればよいですか。「/api/products/」または「~/api/products」は機能しません。

4

1 に答える 1

5

_Layout.cshtml の最初の部分に、

<script type="text/javascript">
    appFolder = @Url.Content("~/");
</script>

JavaScriptでの呼び出しを次のように変更しました

$.getJSON(appFolder+"api/products/"

そして、これで問題が解決しました。

于 2012-08-24T17:29:30.910 に答える