php跨域請求怎么解決?

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);

// 響應(yīng)類型

header('Access-Control-Allow-Methods:POST,GET');

// 帶 cookie 的跨域訪問

header('Access-Control-Allow-Credentials: true');

// 響應(yīng)頭設(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.muchs.cn/phpkuayu.php',function(data){
    console.log(data);
  })
})
</script>

分享文章:php跨域請求怎么解決?
文章轉(zhuǎn)載:http://www.muchs.cn/news33/274833.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航移動網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈、電子商務(wù)虛擬主機、品牌網(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)

成都seo排名網(wǎng)站優(yōu)化