js跨域請求資料實現

2021-05-24 15:13:22 字數 1374 閱讀 5230

第一步,設定需要被跨域呼叫的頁面kuayu.htm

,具體內容如下:

第二部在呼叫方加入如入js檔案

* 跨域請求資料,使用iframe.contentwindow.name屬性,

* 本網域名稱下還需要提供乙個空白頁面位址.

* 該方法獲取資料是安全的,一旦從iframe.contentwindow.name獲得資料,

* 就立馬刪除iframe,防止資料洩露.

* 理論上講iframe.contentwindow.name可以儲存任意位元組的資料.

function requestforcrossdomain(oparam) {

var oframe = document.createelement("iframe");

oframe.style.width    = "0px";

oframe.style.height   = "0px";

oframe.style.border   = "none";

oframe.style.overflow = "hidden";

var isvalid = 0;

var handler = function() {

if (!isvalid) {

isvalid = 1;

// 注意:這裡使用location.href,不是this.src

this.contentwindow.location.href = oparam.blankpage;

else {

var rs = this.contentwindow.name;

this.onload = null;

this.onreadystatechange = null;

this.parentnode.removechild(this);

oparam.callback(rs);

oframe.onload = handler;

oframe.onreadystatechange = function() {

if (this.readystate === "complete") {

handler.call(this);

oframe.src = oparam.url;

第三步,在根目錄中加入乙個blank.htm頁面,供跨域**初始化時呼叫(只做為乙個過度)

第四步,在具體的頁面中去呼叫如下的js**, 即可獲取跨域資料

jQuery PHP跨域請求資料

jquery 1 獲取網域名稱 2function getdomain url 89 記錄訪客 10function recordvisitor 19 datatype jsonp 20 jsonp callback 21 jsonpcallback returnfun 22 success fun...

ajax跨域請求資料

最近開始接觸ajax的跨域請求問題,相比網上說的一大堆,我這裡就說得比較淺顯了。關於為什麼要跨域這個問題,實際的需求是當 專案部署在乙個網域名稱上的時候,分域可以很好地解決 卡頓問題 擁有多台伺服器就另當別論 這種做法現在很常見,多看幾個 細心點就可以看出點門道。下面對比一下跨域之前的ajax請求與...

關於跨域請求資料的問題

vue resource 跨域請求 1 客戶端 1 在webpack.config.js config index.js 檔案裡設定 可以同時設定多個 dev 2 在元件中編輯 下面是post方法,get方法也一樣 或者使用axios 記得安裝和引入axios模組 import axios from...