【问题标题】:Ajax Jquery call made with WCF service使用 WCF 服务进行的 Ajax Jquery 调用
【发布时间】:2013-06-13 16:12:11
【问题描述】:

我发现了大量关于对 WCF 服务进行 jquery ajax 调用的文章和帖子。我似乎无法在 .net 4.5 中找到一个很好的教程。我找到了一篇 msdn 博客文章,声称允许您这样做,但它不起作用。以下是它声称您需要在 web.config 中更改的所有内容,其他所有内容都可以保留为它附带的基本模板代码。

    <services>
  <service name="WcfServiceAjax.Service">

    <endpoint address="ajaxEndpoint" behaviorConfiguration="AjaxBehavior"
     binding="webHttpBinding" bindingConfiguration="AjaxBinding" 
     contract="WcfServiceAjax.IService"></endpoint>

    <host>
      <baseAddresses>
        <add baseAddress="http://localhost:62069"/>
      </baseAddresses>
    </host>

  </service>

当我尝试直接使用此服务调用服务时

 http://localhost:62069/Service.svc/GetData

我刚刚收到 404 错误 当我尝试使用

调用它时
  <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
 <script>

  $.ajax({
    type: "POST",
    url: "Service.svc/GetData",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (msg) {
        alert(msg.d);
    },
    error: function () {
        alert('eh, fack!');
    }
});
</script>

我收到“加载资源失败”。我真的只是在寻找一个简单易懂的教程,介绍如何在 .net 4.5 中使用 jQuery ajax 调用 WCF 服务。我知道有很多这样的帖子,但我还没有找到直接针对 4.5 的帖子。

谢谢

【问题讨论】:

    标签: wcf web-services jquery .net-4.5


    【解决方案1】:

    我认为 404 错误是因为您的 ajax 调用调用了Service.svc/GetData 而您的服务在端点地址可用:&lt;endpoint address="ajaxEndpoint"

    【讨论】:

    • 我现在正在使用它来点击它,但我仍然得到 404,所以我不确定是否是这种情况,或者我仍然使用错误的 url localhost:62069/ajaxEndpoint/GetData
    • 您如何托管服务?自托管还是使用 SVC 文件的 IIS?
    • 它是使用 iis express 托管的,我将使用 IIS 来托管它,当一切都说完了
    • 你能发布你的 .svc 文件吗?
    猜你喜欢
    • 2015-04-27
    • 2014-07-08
    • 1970-01-01
    • 1970-01-01
    • 2012-03-05
    • 1970-01-01
    • 1970-01-01
    • 2016-02-22
    • 1970-01-01
    相关资源
    最近更新 更多