Restifyapi:发送后无法设置标头

艾哈迈德坎·阿克苏

嗨,我在 Restifyapi 上为我的朋友构建了两侧应用程序,但是当它开始时,我输入了第一条消息,它的工作消息发送了第二个终端,但是当我输入了 seccond 消息服务器终端时出现错误

这是服务器:

var restify = require('restify');
var apiai = require('apiai');
var app = apiai("4a8fad8f64874e11bc5d1aa5ea8f96f9");
var chalk = require('chalk')
var sleep = require('sleep')
var clients = require('restify-clients');
const readline = require('readline');
const tls = require('tls');
    const server = restify.createServer({
    name: 'FridayAI',
    version: '1.8.0',
});

const rl = readline.createInterface({
   input: process.stdin,
   output: process.stdout,
});

console.log(chalk.yellow('\nSuccesfull\n'));
console.log(chalk.yellow('Starting on 5 seconds\n'));

server.use(restify.plugins.fullResponse());
server.use(restify.plugins.acceptParser(server.acceptable));
server.use(restify.plugins.queryParser());
server.use(restify.plugins.bodyParser());
server.pre(restify.plugins.pre.context());

function welcome(req, res, next) {
   res.send('Welcome')
   next()
}

server.get('/s', welcome);

function respond(req, res, next) {
   rl.on('line', (input) => {
      res.noCache()
      res.send(`${input}`);
      res.end() 
   })
}

server.patch('/', respond);

server.listen(8080, function () {
   console.log('%s listening at %s', server.name, server.url , 'Version:' , server.version);
});

这是客户

var assert = require('assert');
var clients = require('restify-clients');
const readline = require('readline');
var chalk = require('chalk')
var restify = require('restify');
var sleep = require('sleep')
const notifier = require('node-notifier');
const path = require('path')
const tls = require('tls');

var client = clients.createJsonClient({
  url: 'http://localhost:8080',
  version: '1.8.0',
});

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});

client.get('/s', function (err, req, res, obj) {
  assert.ifError(err);
  console.log(chalk.magenta(obj));
})

client.patch('/', function (err, req, res, obj) {
  assert.ifError(err);
  console.log(chalk.magenta('FridayAI:', obj));
})

错误:

Error: Can't set headers after they are sent.
at validateHeader (_http_outgoing.js:494:11)
at ServerResponse.setHeader (_http_outgoing.js:501:3)
at ServerResponse.noCache (C:\Users\ahmet\Desktop\FridayAI\FridayAPI\node_modules\restify\lib\response.js:91:14)
at Interface.rl.on (C:\Users\ahmet\Desktop\FridayAI\FridayAPI\api.js:51:9)
at emitOne (events.js:116:13)
at Interface.emit (events.js:211:7)
at Interface._onLine (readline.js:282:10)
at Interface._line (readline.js:631:8)
at Interface._ttyWrite (readline.js:911:14)
at ReadStream.onkeypress (readline.js:160:10)

如何在终端上发送无限消息感谢帮助

雨果·雷吉博

尝试将功能更改为此

function respond(req, res, next) {
res.noCache()
rl.on('line', (input) => {
res.send(`${input}`);
    res.end() 

})
}

另外,不确定您使用的是哪个 Restify 版本,但您应该在最后“返回 next()”以发送响应;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

发送后无法设置标头。节点

来自分类Dev

发送后无法设置标头

来自分类Dev

错误:发送后无法设置标头。

来自分类Dev

Express 发送后无法设置标头

来自分类Dev

NodeJS错误-发送标头后无法设置标头

来自分类Dev

异步响应-发送标头后无法设置标头

来自分类Dev

Express-发送标头后无法设置标头

来自分类Dev

表达错误:发送标头后无法设置标头

来自分类Dev

错误:发送标头后无法设置标头

来自分类Dev

收到错误-发送标头后无法设置标头

来自分类Dev

Sails.js发送后无法设置标头

来自分类Dev

错误:发送标头后无法设置。Express.js

来自分类Dev

sailsjs策略导致发送标头后无法设置错误

来自分类Dev

NodeJS-发送后无法设置标头-多次调用

来自分类Dev

错误:发送标头后无法设置。节点Expressjs

来自分类Dev

Express / node.js发送后无法设置标头

来自分类Dev

发送标头后无法设置。Nodejs Express

来自分类Dev

错误:发送标头后无法设置。Connect.js

来自分类Dev

Node、Mongo、Mongoos - 发送后无法设置标头

来自分类Dev

ExpressJS“错误:发送后无法设置标头。”

来自分类Dev

未处理的承诺拒绝:发送后无法设置标头

来自分类Dev

node-rest-client:发送后无法设置标头。

来自分类Dev

发送多个 mongo 查询后无法设置标头

来自分类Dev

使用 EventEmitter 时发送后无法设置标头

来自分类Dev

错误:发送 Ember/Nodejs 后无法设置标头

来自分类Dev

Node.js/Firebase:发送后无法设置标头

来自分类Dev

发送后无法设置标头,从 SendFile 重定向

来自分类Dev

设置内容类型后,无法在发送标头后设置标头

来自分类Dev

路由错误:错误:发送标头后无法设置标头

Related 相关文章

热门标签

归档