跨域請求

1、jsonp

JSON(JavaScript Object Notation)和JSONP(JSON with Padding):將json格式數據以function包裹起來,經過script標籤發生至後臺,而且返回接受數據javascript

//經過script標籤引入一個文件,這個文件載入成功後會執行咱們在url參數中指定的函數,而且會把咱們須要的json數據做爲參數傳入。因此jsonp是須要服務器端的頁面進行相應的配合的。
1. callback參數 爲方法名
//方法在跨域訪問連接<script src="http://test.com/07cross_domain.php?callback=username"> <//script>的前面php

	function username(data){
			console.log(data);//[1, 2, "username"]
		}
		<script src="http://test.com/07cross_domain.php?callback=username"> <//script>

  2.jquery 封裝jsonp 實現跨域訪問html

    $.getJSON('http://test.com/07cross_domain.php?callback=?',function(data){
        console.log(data);//[1, 2, "jQuery111308241057162129959_1460185199870"]
    })

 

2、iframe或img標籤跨域

其實jsonp是依靠 script標籤跨域java

3、Proxy後臺代理 

例如:PHP經過Cur模塊 l實現網頁代理proxyjquery

4、同源機制 CORS(Access-Control-Allow-Origin)

// 指定容許其餘域名訪問  
header('Access-Control-Allow-Origin:*');  
// 響應類型  
header('Access-Control-Allow-Methods:POST');  
// 響應頭設置  
header('Access-Control-Allow-Headers:x-requested-with,content-type');

相關文章
相關標籤/搜索