Node.js 节点上的CoAP分块传输
如何在NodeJ上创建CoAP分块传输?我使用节点coap模块。 我将请求发送至:Node.js 节点上的CoAP分块传输,node.js,coap,Node.js,Coap,如何在NodeJ上创建CoAP分块传输?我使用节点coap模块。 我将请求发送至: var options = { host: 'coap.me', port: 5683, pathname: '/test', method: 'PUT', }; 我也这样做:req.setOption('Block2',新的缓冲区([1])此方法应创建CoAP选项,并表示有效负载的大小为32字节。在那之后我不知道该怎么办。我尝试循环(body=32字节)
var options = {
host: 'coap.me',
port: 5683,
pathname: '/test',
method: 'PUT',
};
我也这样做:req.setOption('Block2',新的缓冲区([1])代码>此方法应创建CoAP选项,并表示有效负载的大小为32字节。在那之后我不知道该怎么办。我尝试循环(body
=32字节):
for(变量i=0;i<100;i++){
如果(i==99){
请求结束(正文);
}否则{
请求写入(正文);
}
}
我所拥有的一切都是一个错误:最大数据包大小是1280:当前是265951
或者如果我应该使用不同的请求,如何一个接一个地映射?因为每一个请求都会产生一个响应,我的程序在第一个请求后结束。我猜您想从客户端向服务器发送一个大的负载?
这是块1而不是块2
:
Block1和Block2选项都可以出现在请求和请求中
响应消息。无论哪种情况,Block1选项都属于
请求有效负载,Block2选项与响应相关
有效载荷
不幸的是,节点coap中似乎没有这种现成的特性
谢谢你的回答。是的,我注意到缺少这个特性,并编写了用于实现Block1的函数
for(var i = 0; i < 100; i++){
if(i === 99){
req.end(body);
} else {
req.write(body);
}
}