【问题标题】:Calling MVC4 Web API from a Normal HTML File outside the project从项目外的普通 HTML 文件调用 MVC4 Web API
【发布时间】:2012-06-28 10:36:07
【问题描述】:

我正在尝试学习 MVC4 Web API。我正在从 VS2010 本身运行我的项目。

我的项目网址是 localhost:31735

当直接从浏览器本身调用 WebAPI 时。它的工作方式类似于 localhost:31735/api/products/

我现在想从项目外部的普通 HTML 文件调用 Webapi。

我试过这样做

 $(document).ready(function () {
           // Send an AJAX request 
            $.getJSON("http://localhost:31735/api/products/",
            function (data) {
            // On success, 'data' contains a list of products. 
               $.each(data, function (key, val) {

                // Format the text to display. 
                var str = val.Name + ': $' + val.Price;

                // Add a list item for the product. 
                $('<li/>', { html: str }).appendTo($('#products'));
            });
        });
    });

但这不起作用。你能帮忙吗?

【问题讨论】:

    标签: asp.net asp.net-mvc


    【解决方案1】:

    我现在想从项目外部的普通 HTML 文件调用 Webapi。

    您不能这样做,因为 same origin policy 限制阻止您发送跨域 AJAX 请求。有different possible workarounds,其中之一是使用JSONP而不是JSON。

    这里是a post,它描述了如何使用自定义媒体格式化程序来实现这一目标。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-14
      • 2013-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多