gpt4 book ai didi

php - 如何在 php 中接收 xml 请求并发送响应 xml?

转载 作者:IT王子 更新时间:2023-10-29 00:00:48 27 4
gpt4 key购买 nike

所以我需要构建一个应用程序来接收 xml 请求,并基于它返回响应 xml。我知道如何发送请求和接收响应,但我从来没有用其他方式做过。我会像这样发送请求:

private function sendRequest($requestXML)
{
$server = 'http://www.something.com/myapp';
$headers = array(
"Content-type: text/xml"
,"Content-length: ".strlen($requestXML)
,"Connection: close"
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $server);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 100);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $requestXML);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$data = curl_exec($ch);



if(curl_errno($ch)){
print curl_error($ch);
echo " something went wrong..... try later";
}else{
curl_close($ch);
}

return $data;

}

我的问题是 - 接收端的代码是什么?我如何捕捉传入的请求?谢谢。

最佳答案

总体思路是读入 POST 值,将其解析为 XML,对其做出业务决策,根据您决定的 API 构建 XML 响应,并将其写入响应。

读入 POST 值:

$dataPOST = trim(file_get_contents('php://input'));

解析为 XML:

$xmlData = simplexml_load_string($dataPOST);

然后,您将构建一个 XML 字符串(或文档树,如果您愿意),并将其打印到响应中。 print() 或 echo() 都可以。

关于php - 如何在 php 中接收 xml 请求并发送响应 xml?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9374224/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com