我正在开发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.
答案 0 :(得分:3)
www.example.com
和example.com
为different origins,您不能(FSVO can't)使用在其中运行的JavaScript来向另一方请求数据。
在JavaScript中使用相对URI,而不是绝对URI。
从一个主机名运行您的站点也是一个好主意,而不是两个类似的主机名。选择www.example.com
或example.com
作为您的规范主机名,然后设置另一个以将其流量重定向到该主机名。
答案 1 :(得分:2)
听起来你被同源政策抓住了。
我的猜测是您已将自动填充设置中的链接硬编码为www.mydomain.com
,并且在查看网站视图mydomain.com
时,它会被视为跨网站请求。
解决方案是在相对自动完成设置中生成AJAX请求URL。