浏览器对ajax请求的限制,不允许跨域请求资源。
- http://www.a.com --> http://www.b.com 是跨域
- http://www.a.com --> http://www.a.com:8080 是跨域
- http://a.a.com --> http://b.a.com 是跨域 同一个顶级域名下
- http://www.a.com --> http://www.a.com/api 不是
不同的域名或不同的端口都是跨域请求。
顶级域名又称为根域名,比如我们举例的http://baidu.com就是顶级域名。
二级域名是在顶级域名下解析的二级域名,比如:http://www.baidu.com/和baike.baidu.com都是二级域名,这里有一个误区,就是很多人会将http://www.baidu.com/当作顶级域名处理,但是实际上http://www.baidu.com/这样的域名也是二级域名。
三级域名即在二级域名的基础上再添加一级域名,如http://wencaifeng.blog.sohu.com是一个三级域名,它是在http://blog.sohu.com的二级域名基础上添加的三级域名。
如何解决跨域问题?
- jsonp
- 后端和后端之间没有跨域的问题,可以先访问后端,然后通过后端okhttp之类的技术调用别的域名的接口。再返回给前端