如何将数据从一台服务器传输到另一台服务器

时间:2019-04-13 09:19:19

标签: php rest webserver

我在服务器A 中有一些数据,我需要从服务器A提取数据后,使用一些api请求服务器A 以获取数据。完善我从服务器A获得的JSON响应,我需要将该经过改进的JSON数据发送到服务器B

enter image description here

注意:我不需要执行任何UI工作,只需要运行代码即可传输数据
但是我确实知道应该使用哪种语言或框架来实现这一目标,以及从何处开始。
有人可以建议我吗?

1 个答案:

答案 0 :(得分:0)

要从服务器A 获取数据,可以使用PHP cURL。将输出转换为所需的结构,例如,使用json_decode(),先转换,然后json_encode()使用另一个PHP cURL调用将其传递到服务器B

// receive from ServerA
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "http://SERVER_A_URL");         
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);         
$serverA = curl_exec($ch);         
curl_close($ch);  

$serverA = json_decode($serverA); 

// some transformation
$serverB = [
    'varOne' => $serverA->varOne,
    'varTwo' => $serverA->varTwo
    // ...
];

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "http://SERVER_B_URL");
curl_setopt($ch, CURLOPT_POSTFIELDS,  http_build_query($serverB));
curl_setopt($ch, CURLOPT_POST, 1);        
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);      
$serverA = curl_exec($ch);         
curl_close($ch);