javascript - 关于Ajax跨域的问题

查看:113
本文介绍了javascript - 关于Ajax跨域的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

XMLHttpRequest cannot load http://study.163.com/webDev/c... Redirect from 'http://study.163.com/webDev/c...' to 'http://study.163.com/systemEr...' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8000' is therefore not allowed access.

我只知道这里涉及到了跨域,我用的是绝对地址访问的.浏览器Chrome56.JavaScript高级程序设计上面说是支持XHR原生跨域的.

我想问下这个是服务器端拒绝访问吗?还是地址不对?(这个应该不会)

如果不是,如何访问?

最好是原生JS! 谢谢!

这个问题已被关闭,原因:问题已解决 - 问题已解决,且对他人无借鉴意义

解决方案

2017年3月2日 14:44:19更新答案:

题主的遇到的问题不是跨域问题,而是这个页面不存在,所以报错了。

原答案(有更新):

用Chrome打开网页课堂的一门课程,比如这节课: http://study.163.com/course/introduction/432008.htm#/courseDetail

按 F12 打开调试工具。切换到 network 面板,并选择下面的 XHR 过滤。注意到下面有一条请求:

现在点击这个请求,查看详情:

Access-Control-Allow-Origin 指定了只能从 http://study.163.com 这个域访问。
别的地方都不能访问。

解决方法就是让网易设置一下允许你的域名访问。

从你的例子看,需要网易开放给 http://localhost:8000访问。

这篇关于javascript - 关于Ajax跨域的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆