【问题标题】:JQuery Auto Complete without www (in url) not working, but with www is working没有 www(在 url 中)的 JQuery 自动完成不工作,但有 www 工作
【发布时间】:2013-02-08 09:17:34
【问题描述】:

我正在处理 asp.net c# 项目,当我输入这样的 url 名称时:http://mydomain.com Jquery auto Complete 不起作用并给出错误消息,但是当我像这样将 www 添加到它时:www.mydomain.com它有效...

任何想法..?

错误信息:-

XMLHttpRequest cannot load http://www.mydomain.com/AutoComplete.asmx/GetAutoCompleteData. Request header field X-Requested-With is not allowed by Access-Control-Allow-Headers.

【问题讨论】:

  • 三个字:同源策略
  • @DownVoters - 谁投了反对票?这是一个结构良好的问题。你不会因为问题很简单而投反对票!

标签: c# jquery asp.net autocomplete dns


【解决方案1】:

www.example.comexample.comdifferent origins,您不能 (FSVO can't) 使用在其中一个上运行的 JavaScript 从另一个请求数据。

在您的 JavaScript 中使用相对 URI,而不是绝对的。

从一个主机名而不是两个相似的主机名运行您的网站也是一个好主意。选择 www.example.comexample.com 作为您的规范主机名,并设置另一个以将其流量重定向到它。

【讨论】:

  • 按钮单击也不起作用..给出错误未捕获的 Sys.WebForms.PageRequestManagerServerErrorException: Sys.WebForms.PageRequestManagerServerErrorException: 在服务器上处理请求时发生未知错误。服务器返回的状态码是:0
  • @HarshitTailor — 这是一个完全不同的问题,您没有提供足够的信息来解决这个问题。问一个新问题。
【解决方案2】:

听起来你被同源政策抓住了。

我的猜测是您已将自动完成设置中的链接硬编码为 www.mydomain.com,当查看站点视图 mydomain.com 时,它被视为跨站点请求。

解决方案是使自动完成设置中的 AJAX 请求 URL 相对。

【讨论】:

  • 按钮单击也不起作用..给出错误未捕获的 Sys.WebForms.PageRequestManagerServerErrorException: Sys.WebForms.PageRequestManagerServerErrorException: 在服务器上处理请求时发生未知错误。服务器返回的状态码是:0
  • @HarshitTailor 这是您的服务器端代码的问题。我会就此提出一个新问题。
猜你喜欢
  • 2013-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-08
  • 2015-01-15
  • 2012-04-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多