将PHP提交到另一台服务器,然后返回另一台服务器的响应。

7

我有几个服务器,它们共同工作。

  • 服务器A 对发来的帖子做出 XML 响应。
  • 服务器B 接收一个帖子请求,稍微修改帖子值然后将其提交到服务器 A(类似适配器模式)。服务器 B 应该等待服务器 A 的 XML 响应,然后返回该响应。

是否有一种使用 PHP 内置功能轻松完成此操作的方法?


1
你尝试过查看curl吗? - GordonM
2个回答

17

我曾有一个脚本需要类似的操作,我使用以下方法实现了这个需求,

$url = URL_TO_RECEIVING_PHP;

$fields = array(
        'PARAM1'=>$_POST['PARAM1'],
        'PARAM2'=>$_POST['PARAM2']
);

$postvars='';
$sep='';
foreach($fields as $key=>$value)
{
        $postvars.= $sep.urlencode($key).'='.urlencode($value);
        $sep='&';
}

$ch = curl_init();

curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$postvars);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);

$result = curl_exec($ch);

curl_close($ch);

echo $result;
它将回显从你接收的PHP返回的内容。

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接