gpt4 book ai didi

php - nodejs TCP/IP 中的\r\n\r\n 是什么字符

转载 作者:行者123 更新时间:2023-12-02 19:42:58 28 4
gpt4 key购买 nike

当我在 Node js 中使用 TCP 服务器向客户端发送数据时遇到问题。这是我的代码

var net = require('net');

var server = net.createServer(function (socket) {
// We have a connection - a socket object is assigned to the connection automatically
console.log('CONNECTED: ' + socket.remoteAddress +':'+ socket.remotePort);

socket.on('data', function(data) {
var datas = JSON.parse(data);
console.log('DATA ' + socket.remoteAddress + ': ' + data);
//socket.write("kenapa ya / HTTP/1.0\r\n\r\n");
}).on('connect', function() {
// Manually write an HTTP request.
var data = {
"name" : "test",
"args" : {
"data":[{
"a":1
}]
}
};
socket.setEncoding("utf8");
socket.write(JSON.stringify(data) + "\r\n\r\n");

}).on('end', function() {
console.log('DONE');
});


});

server.listen(1337, '127.0.0.1');
console.log("server is listen on 1337");

实际上该代码在我的客户端套接字中工作,但是当我尝试 socket.write(JSON.stringify(data)); 而不使用 \r\n\r\n 来自服务器的响应太长,我无法从服务器获取消息。

有人知道会发生什么吗?这段代码\r\n\r\n的效果是什么?我正在使用 php 创建套接字客户端。

最佳答案

CRNL 两次是 HTTP header 和正文之间的分隔符。请参阅 HTTP RFC .

关于php - nodejs TCP/IP 中的\r\n\r\n 是什么字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10171127/

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