如何按字节发送/接收数据

2024-10-01 07:10:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在从客户机上的python脚本触发Web服务器上的php脚本。我正在处理可供客户机脚本使用的二进制数据,以进行分析,如:

$file = "gw/gateway.py"
if (file_exists($file)) {
    $gw_file_sz = filesize($file);
    $filesz1 = $gw_file_sz/256;
    $filesz2 = $gw_file_sz%256;
}
    $binarydata = pack("C*", 0x01, $year1, $year2, $day1, $day2, $min1, $min2, $sec, 0x00, 0x3f, 0x02, 0x00, 0x1c, 0x2c , 0x4c, 0xdf, 0xcb,
                                                                                             0x02, 0x00, 0x1c, 0x2c , 0x5c, 0xe8, 0x41,
                                                 0x04, 0x00, 0x1c, 0x2c , 0x5c, 0xe4, 0x38,
                                                 0x02, 0x00, 0x1c, 0x2c , 0x5c, 0xe3, 0x7b,
                                                 0x02, 0x00, 0x1c, 0x2c , 0x4c, 0xdf, 0xbf,
                                                 0x02, 0x00, 0x1c, 0x2c , 0x5c, 0xe7, 0xd7,
                                                 0x02, 0x00, 0x1c, 0x2c , 0x4c, 0xdf, 0x64,
                                                 0x02, 0x00, 0x1c, 0x2c , 0x5c, 0xe7, 0x7a,
                                                 0x02, 0x00, 0x1c, 0x2c , 0x5c, 0xe8, 0x22,
                                               0x08, $filesz1, $filesz2);

echo $binarydata;

现在,这对这些数据很好,但是如何在流的末尾附加文件$file,以便客户机获取? 在Python方面,我从afh=StringIO(data)读取所有数据,其中我得到的字节数类似于MyByte=ord(fh.读取(1) )

[编辑] 我只是尝试在最后(在回声之前)附加数据,例如:

^{pr2}$

但似乎没用,为什么不。。。?


Tags: 数据py服务器脚本web客户机二进制gateway
1条回答
网友
1楼 · 发布于 2024-10-01 07:10:35

因为您正在输出一个数据流,所以我看不出为什么不能直接回显整个文件内容。我可能还想修改你想修改的文件。在

$file = "gw/gateway.py"
if (file_exists($file)) {
    $gw_file_sz = filesize($file);
    $filesz1 = floor($gw_file_sz/256);
    $filesz2 = $gw_file_sz%256;
}
$binarydata = pack("C*", 0x01, $year1, $year2, $day1, $day2, $min1, $min2, $sec, 
    0x00, 0x3f, 0x02, 0x00, 0x1c, 0x2c , 0x4c, 0xdf, 0xcb,
    0x02, 0x00, 0x1c, 0x2c , 0x5c, 0xe8, 0x41,
    0x04, 0x00, 0x1c, 0x2c , 0x5c, 0xe4, 0x38,
    0x02, 0x00, 0x1c, 0x2c , 0x5c, 0xe3, 0x7b,
    0x02, 0x00, 0x1c, 0x2c , 0x4c, 0xdf, 0xbf,
    0x02, 0x00, 0x1c, 0x2c , 0x5c, 0xe7, 0xd7,
    0x02, 0x00, 0x1c, 0x2c , 0x4c, 0xdf, 0x64,
    0x02, 0x00, 0x1c, 0x2c , 0x5c, 0xe7, 0x7a,
    0x02, 0x00, 0x1c, 0x2c , 0x5c, 0xe8, 0x22,
    0x08, $filesz1, $filesz2);

echo $binarydata;
echo file_get_contents($file);

相关问题 更多 >