JSONP (JSON with Padding) 是一种跨域请求的解决方案,通过动态创建 <script> 标签来实现。由于 <script> 标签可以跨域请求,因此动态创建它可以实现跨域数据获取。

在 PHP 中接收 JSONP 数据,需要通过 $_GET 获取请求参数。JSONP 请求参数一般包含回调函数名称和需要传递的数据,例如:

http://example.com/data.php?callback=handleData&data='{"name":"John","age":30}'

其中,callback 参数指定回调函数名称,data 参数是需要传递的数据,以 JSON 格式字符串形式呈现。

在 PHP 中可以使用以下方式获取 JSONP 数据:

$callback = $_GET['callback']; // 获取回调函数名称
$data = $_GET['data']; // 获取传递的数据

// 将 JSON 格式数据转换为 PHP 数组
$data = json_decode($data, true);

// 调用回调函数,将数据以 JSON 格式返回
echo $callback . '(' . json_encode($data) . ')';

其中,json_decode() 函数将 JSON 格式数据转换为 PHP 数组,true 参数表示转换为关联数组。最后,通过 echo 输出包含回调函数名称的 JSON 格式数据,完成 JSONP 数据返回。

PHP 接收 JSONP 数据:跨域请求解决方案

原文地址: https://www.cveoy.top/t/topic/ow3h 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录