jsonp的工作原理

2021-09-07 15:38:07 字數 883 閱讀 4164

跨域:

我在www.xiaoyanzi.com 站點下面的乙個頁面想去訪問 下面的乙個資源.

a.html

b.html

1:document

a.html 想訪問b.html 下面的元素 頂級網域名稱都不一樣。

a.html

b.html 主網域名稱一樣。

a.html 想訪問b.html 預設不允許。

同源:網域名稱,埠,協議必須一樣。

(不同源就跨域)

但是主網域名稱都一樣。

所以我怎麼去解決這個跨域的問題。

a.html 使用js 新增乙個document.domian ="zhuwu.com";

b.html 使用js 新增乙個document.domian ="zhuwu.com";

2:ajax 跨域

在 有乙個a.html 想去訪問/afads.php

有跨域的特性。(瀏覽器覺得會有安全問題。)

a.html

$.ajax()

請求可以傳送出去,資料回不來。

$.ajax()

底層的原理

在jquery 的引數不加 datatype:"jsonp",

預設是傳送乙個xmlhttprequest 請求,使用這個物件去傳送請求。你瀏覽器根本就接收不到資料。

新增了:datatype:"jsonp",

jquery 裡面

var script=document.createelement("script");

script.src="/demo.js";

跨域訪問是我們以後比較常見的操作:

ajax工作原理,Jsonp原理

ajax工作原理是 相當於在使用者和伺服器之間加了 個中間層 ajax引擎 使使用者操作與伺服器響應非同步化。對於使用者請求ajax引擎會做一些資料驗證和資料處理,不是所有請求都提交給伺服器,當需要從伺服器讀取新資料時由ajax引擎代為向伺服器提交請求。ajax最大優點就是不重新整理整個頁面的前提下...

JSONP 的工作原理是什麼?

利用 並提供乙個 函式來接收資料 函式名可約定,或通過位址引數傳遞 第三方產生的響應為json資料的包裝 故稱之為jsonp,即json padding 形如 back 這樣瀏覽器呼叫back函式,並傳遞解析後json物件作為引數。本站指令碼可在back函式裡處理所傳入的資料。jsonp本身就是乙個...

Ajax和Jsonp的工作原理,以及區別

ajax工作原理是 相當於在使用者和伺服器之間加了 個中間層 ajax引擎 使使用者操作與伺服器響應非同步化。對於使用者請求ajax引擎會做一些資料驗證和資料處理,不是所有請求都提交給伺服器,當需要從伺服器讀取新資料時由ajax引擎代為向伺服器提交請求。ajax最大優點就是不重新整理整個頁面的前提下...