【发布时间】:2023-03-19 01:20:01
【问题描述】:
我一直在尝试使用 cURL 将数据发送到本地 IP。此 IP 正在等待接收传入数据。
为此,我使用了以下代码:
if(isset($_GET['post'])) {
$data = array(
'type' => 'direct',
'packages' => []
);
$curl = curl_init('http://192.168.2.10:12800/api/install');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($curl, CURLOPT_FAILONERROR, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-type: application/json'));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
if (curl_errno($curl)) {
$error_msg = curl_error($curl);
}
echo curl_exec($curl);
if (isset($error_msg)) {
echo $error_msg;
} else {
echo 'OK!';
}
}
在本地主机上它可以工作,但在实时网站上却不行。
我在想非本地主机可能无法与本地主机环境通信,但我不确定。
是否可以让我的脚本向本地 IP 发送数据?
编辑:事后考虑,我是否必须切换到 JavaScript 才能使其正常工作?
【问题讨论】:
-
192.168.2.10 的代码是否也在直播服务器上运行,您是否更新了 IP 地址?
-
@NigelRen 位于 192.168.2.10:12800 的应用程序确实在本地服务器上运行,并且正在等待发送到 IP 地址的传入数据。
-
您不太可能从远程服务器访问此 IP 地址,您使用的范围仅在您的本地网络上可用。不确定stackoverflow.com/questions/52137672/… 是否给出了答案。