2023-08-05 分類: 網(wǎng)站建設(shè)
PHP解決跨域問題
在做項目的過程中經(jīng)常需要跨域訪問。這里主要介紹一下 PHP 中怎么解決跨域問題。
1、允許所有域名訪問
header('Access-Control-Allow-Origin: *');
2、允許單個域名訪問
header('Access-Control-Allow-Origin: https://test.com');
3、允許多個域名訪問
在實際項目中最好指定能跨域訪問的域名,增加安全性??梢詫懺谝粋€公共類里面,封裝一個方法調(diào)用。
// 設(shè)置能訪問的域名
staticpublic$originarr= [
'https://test1.com',
'https://test2.com',
];
/**
* 公共方法調(diào)用
*/
staticpublicfunctionsetheader()
{
// 獲取當前跨域域名
$origin= isset($_SERVER['HTTP_ORIGIN']) ?$_SERVER['HTTP_ORIGIN'] :'';
if(in_array($origin, self::$originarr)) {
// 允許 $originarr 數(shù)組內(nèi)的 域名跨域訪問
header('Access-Control-Allow-Origin:'.$origin);
// 響應類型
header('Access-Control-Allow-Methods:POST,GET');
// 帶 cookie 的跨域訪問
header('Access-Control-Allow-Credentials: true');
// 響應頭設(shè)置
header('Access-Control-Allow-Headers:x-requested-with,Content-Type,X-CSRF-Token');
}
}
==========
下面創(chuàng)新互聯(lián)實例介紹
phpkuayu.php
<?php
header('Access-Control-Allow-Origin: https://www.xwcx.net'); //允許單個域名訪問
header('Content-Type:application/json; charset=utf-8');
$arr = array('a'=>1,'b'=>2);
exit(json_encode($arr));
---
qingqiu-phpkuayu.php
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script>
$(function(){
$.get('http://www.rwnh.cn/phpkuayu.php',function(data){
console.log(data);
})
})
</script>
分享文章:php跨域請求怎么解決?
文章轉(zhuǎn)載:http://www.rwnh.cn/news33/274833.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航、移動網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈、電子商務、虛擬主機、品牌網(wǎng)站設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容