【问题标题】:404 not found when accessing JSON WCF Service with jQuery使用 jQuery 访问 JSON WCF 服务时找不到 404
【发布时间】:2011-01-13 07:22:50
【问题描述】:

我有一个托管在 IIS 中的 WCF 服务,它似乎运行良好,但无法通过客户端的 jQuery 访问它。

我的网站结构是这样的 -

localhost:9080/Website 
localhost:9080/WCFService

我已将匿名身份验证用户 ID 设置为 AppPool 身份。

当我尝试从浏览器访问 GET 方法时,它返回 JSON 数据就好了。但是当我尝试使用 jQuery $.ajax() 从客户端访问相同的方法时,服务器会返回 404 错误。

WCF方法的URL是

localhost:9080/WCFService/Service.svc/SimpleMethod

方法的签名是

string SimpleMethod()

我已经尝试在网上查找文章,我认为web.config 没有任何不同。对我来说,这似乎是一个权限问题。

谁能解释一下这个问题?

-谢谢!

【问题讨论】:

  • 如果您发布代码、XML 或数据示例,在文本编辑器中突出显示这些行,然后单击编辑器工具栏上的“代码示例”按钮 ({})很好地格式化和语法高亮它!

标签: wcf json jquery


【解决方案1】:

这就是我所做的 -

添加了使用<webHttp /> 的端点行为并删除了<enableWebScript />。这样就解决了。

【讨论】:

  • 您能详细说明一下吗?我也有同样的问题。
  • @abjbhat 你能解释一下我该怎么做吗?
  • 是的,在你的 web.config 中,寻找 enableWebScript.. 删除它并添加 webHttp
【解决方案2】:

当我尝试从 浏览器,它返回 JSON 数据 还好

您正在从服务器 pc 访问并使用http://localhost:9080

但是当我尝试访问相同的 使用 jQuery 来自客户端的方法 $.ajax() 服务器返回 404 错误。

  • 您使用什么 URL 进行 ajax 调用?使用相对网址。

这看起来像是一个权限的事情 我。

如果在同一台机器(服务器机器)上直接从浏览器调用有效,但从同一客户端使用 ajax 调用不起作用,则可能是错误的 url

您最好发布您的 ajax 调用代码。

【讨论】:

  • 我也想过,但是 URls 没问题。
猜你喜欢
  • 1970-01-01
  • 2016-10-20
  • 1970-01-01
  • 2014-10-06
  • 1970-01-01
  • 1970-01-01
  • 2015-06-12
  • 1970-01-01
  • 2019-04-15
相关资源
最近更新 更多