Ajax 跨域訪問

2022-07-14 15:27:32 字數 3934 閱讀 1063

同源

//

同一網域名稱下,允許通訊

//同一網域名稱下不同資料夾,允許通訊

//同一網域名稱,不同埠,不允許

//同一網域名稱,不同協議,不允許

//網域名稱和網域名稱對應ip,不允許

//主域相同,子域不同,不允許

//同一網域名稱,不同二級網域名稱(同上),不允許

//不同網域名稱,不允許

跨域

doctype html

>

<

html

lang

="en"

>

<

head

>

<

meta

charset

="utf-8"

>

<

title

>title

title

>

<

style

>

body

style

>

head

>

<

body

>

<

h1>我是內部

h1>

<

input

type

="text"

value

="123"

>

body

>

html

>

doctype html

>

<

html

lang

="en"

>

<

head

>

<

meta

charset

="utf-8"

>

<

title

>title

title

>

<

style

>

body

style

>

head

>

<

body

>

<

h1>我是外部

h1>

<

iframe

src="15-inner.html"

>

iframe

>

<

script

>

variframe

=document.queryselector(

'iframe');

varinnerdocument

=iframe.contentwindow.document;

console.log(innerdocument);

script

>

body

>

html

>

核心思想

//

myjs.js

function

say(str)

say('hello');

doctype html

>

<

html

lang

="en"

>

<

head

>

<

meta

charset

="utf-8"

>

<

title

>title

title

>

head

>

<

body

>

<

script

>

function

say(data)

script

>

<

script

src="files/07.php?callback=say"

>

script

>

body

>

html

>

<?php 

$str='';

echo

$_get['callback'].'('.$str.')';

?>

doctype html

>

<

html

lang

="en"

>

<

head

>

<

meta

charset

="utf-8"

>

<

title

>title

title

>

head

>

<

body

>

<

input

type

="button"

value

="ajax傳送jsonp"

返回兩行資料,可以發現,jsonpcallback引數是say,有乙個就是呼叫了say方法,乙個是success成功以後列印的傳輸資料

Ajax跨域訪問

由於http的cors標準,ajax在跨域訪問時被阻止。跨域資源共享標準 cross origin sharing standard 在ajax 字型 drawimage應用情況下,需要對請求或相應做設定才能跨域訪問。ajax跨域訪問解決方案 jsonp 是 json with padding 填充...

JS跨域ajax訪問

需要服務和js配合 服務 webmethod public void helloworld2 string name js呼叫 var datastr name birthday val ajax error function e 如果是在.net下則在web.config中增加配置 在system...

JS跨域ajax訪問

需要服務和js配合 服務 webmethod public void helloworld2 string name js呼叫 var datastr name birthday val ajax error function e 如果是在.net下則在web.config中增加配置 在system...