我将coap api开发成java。它工作得很好。
示例url:coap://localhost:5683/test url。这个api将使用电子设备触发。
我在nodejs中开发了另一个项目。但我想通过node js触发coap api。
我跟踪了这个网址。node-coap
但它不起作用。请大家推荐我。

const coap    = require('../') // or coap
    , server  = coap.createServer()

server.on('request', function(req, res) {
  res.end('Hello ' + req.url.split('/')[1] + '\n')
})

// the default CoAP port is 5683
server.listen(function() {

  var req = coap.request('coap://localhost:5683/test-url');
  req.on('response', function(res) {
    res.pipe(process.stdout)
    res.on('end', function() {
      process.exit(0)
    })
  })

  req.end()
});

错误详细信息:
Error: bind EADDRINUSE 0.0.0.0:5683
    at Object.exports._errnoException (util.js:893:11)
    at exports._exceptionWithHostPort (util.js:916:20)
    at dgram.js:221:18

最佳答案

错误消息eaddrinuse指示端口(5683)已在使用中。
您可以更改端口或终止在5683上运行的进程,然后尝试重新启动应用程序。
您可以如下更改端口:

var PORT = 3000;
server.listen(PORT, function() {

  var req = coap.request('coap://localhost:5683/test-url');
  req.on('response', function(res) {
    res.pipe(process.stdout)
    res.on('end', function() {
      process.exit(0)
    })
  })

  req.end()
});

关于javascript - 使用 Node js的COAP API触发器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39241771/

10-10 14:07