php - 在 php Socket (XML) 中发送多个命令
问题描述
我正在尝试使用 XML 方法向套接字发送多个命令
<?php
set_time_limit(0);
$host = "127.0.0.1";
$port = "1234";
$message = '<?xml version="1.0" encoding="UTF-8" ?>
<command name="login">
<param type="string">username</param>
<param type="string">password</param>
</command>';
echo "Message To server :".$message;
$socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create socket\n");
$result = socket_connect($socket, $host, $port) or die("Could not connect to server\n");
socket_write($socket, $message, strlen($message)) or die("Could not send data to server\n");
$result = socket_read ($socket, 2084) or die("Could not read server response\n");
echo "Reply From Server :".$result;
socket_close($socket);
?>
我得到了正确的响应,但是当我试图发送另一个命令时
$message = '<?xml version="1.0" encoding="UTF-8" ?>
<command name="userlist">
</command>';
我没有得到回复,所以我的问题是如何发送多个请求。
解决方案
最后我得到了解决方案,需要发送两条单独的消息,带有新的socket_write
和socket_read
功能
推荐阅读
- javascript - 检查元素是否在 jQuery 选择器中具有提供的父元素
- c - 访问 C 数组线程中的不同元素是否安全?
- java - java中while循环的时间复杂度
- linux - 使用tar时保存文件名
- java - 图像未在 JavaFX 中显示
- python - 如何处理其数据中包含 \x00(或 \u0000)的 API 响应(JSON),并使用 django 模型将数据存储在 Postgres 中?
- javascript - 尝试访问远程服务器时,React-native fetch 失败并显示“网络请求失败”
- python - 当我尝试创建新项目时,项目类型未在 python 中显示
- python - Cron 日志显示 sh: 1: hdfs: not found
- machine-learning - 一维卷积CNN Keras