ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 1、域名的组成 http://www.abc.com:8080/scripts/jquery.js 其中http://是协议,www是子域名,abc.com是主域名,8080是端口号,scripts/jquery.js是请求资源地址 ## 2、跨域 * 不同域之间请求资源就算做跨域、 * Javascript出于安全性的考虑,不允许跨域调用其他页面的对象。简单理解就是因为Javascript同源策略的限制,a.com域名下的js无法操作b.com域名下的对象。 ## 3、如何解决跨域 ### 3、1jsonp ~~~ $.ajax({ type:"method", url:"", dataType:"jsonp", jsonp:"callback", success:function(data){ }, error:function(xhr){ console.log(xhr.status) } }) ~~~ ### 3、2服务器的解决方案 1. HTML5提供的XMLHttpRequestLevel2已经实现了跨越访问以及其他的一些新功能 2. IE10以下的版本都不支持 3. 在服务器端做一些小小的改造即可: header(`Access-Control-Allow-Origin:*`); header(`Access-Control-Allow-Methods:POST,GET`); ## 3、js中script标签不受同源策略的影响也可以实现跨越 ~~~ var script = document.createElement("script"); script.src = "http://api.douban.com/v2/movie/subject/1764796?&callback=handleResponse"; document.body.prepend(script); function handleResponse(res) { // 对response数据进行操作代码 console.log(res) } ~~~