PHP 使用php的Jquery AJAX跨域代理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 使用php的Jquery AJAX跨域代理相关的知识,希望对你有一定的参考价值。

<?php
$base_url = 'http://www.yoursite.com/api/';
$chamada  = explode('/', $_SERVER['PHP_SELF']);
$chamada  = $chamada[2]; // if this php file is in a subdirectory you may change this key
$url      = $base_url.$chamada;
$method   = (!empty($_POST)) ? 'post' : 'get';

$ch = curl_init();

if ($method == 'get')
{
  if ($_SERVER['QUERY_STRING']) $url .= '?' . $_SERVER['QUERY_STRING'];
  
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_setopt($ch, CURLOPT_URL, $url);
}
else
{
  curl_setopt($ch, CURLOPT_POST, true);
  curl_setopt($ch, CURLOPT_POSTFIELDS, $_POST);
  curl_setopt($ch, CURLOPT_URL, $url);
}

$data = curl_exec($ch);
curl_close($ch);
?>

<!-- Example -->
$.get('proxy.php/my_api_call');
$.post('proxy.php/my_post_api', {id:user_id});

以上是关于PHP 使用php的Jquery AJAX跨域代理的主要内容,如果未能解决你的问题,请参考以下文章

解决ajax跨域的办法,代理,cors,jsonp

PHP 使用jQuery查询跨域AJAX

使用 jQuery 和 AJAX 的跨域 PHP 调用

PHP、jQuery Ajax 和 json 跨域返回

PHP中运用jQuery的Ajax跨域调用实现代码

如何在php中检测ajax跨域请求