Node.js res.send不是函数 [英] Node.js res.send is not a function

查看:502
本文介绍了Node.js res.send不是函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试以下代码,但给我一个错误,"res.send不是函数".请帮我.

I'm trying the following code but it's giving me an error, "res.send is not a function". Please help me.

代码如下:

var http = require('http');
var fs = require('fs');
var connect = require('connect');
var express = require('express');

var app = express();
app.get('/', function(res, req  ) {
        res.send('Hello World');
    });

var server = app.listen(8888, function(){
    var host = server.address().address;
    var port = server.address().port;
    console.log("Example app listening at http://%s:%s", host, port);
});

服务器运行正常并且正在连接.正在显示的完整错误是这样的:

The server is running fine and is connecting. The complete error that is being displayed is something like this:

TypeError:res.send不是一个函数 在c:\ wamp \ www \ node \ server.js:8:13 在Layer.handle [作为handle_request](c:\ wamp \ www \ node \ node_modules \ express \ lib \ router \ layer.js:95:5) 在下一个(c:\ wamp \ www \ node \ node_modules \ express \ lib \ router \ route.js:137:13) 在Route.dispatch(c:\ wamp \ www \ node \ node_modules \ express \ lib \ router \ route.js:112:3) 在Layer.handle [作为handle_request](c:\ wamp \ www \ node \ node_modules \ express \ lib \ router \ layer.js:95:5) 在c:\ wamp \ www \ node \ node_modules \ express \ lib \ router \ index.js:281:22 在Function.process_params(c:\ wamp \ www \ node \ node_modules \ express \ lib \ router \ index.js:335:12) 在下一个(c:\ wamp \ www \ node \ node_modules \ express \ lib \ router \ index.js:275:10) 在expressInit(c:\ wamp \ www \ node \ node_modules \ express \ lib \ Middleware \ init.js:40:5) 在Layer.handle [作为handle_request](c:\ wamp \ www \ node \ node_modules \ express \ lib \ router \ layer.js:95:5)

TypeError: res.send is not a function at c:\wamp\www\node\server.js:8:13 at Layer.handle [as handle_request] (c:\wamp\www\node\node_modules\express\lib\router\layer.js:95:5) at next (c:\wamp\www\node\node_modules\express\lib\router\route.js:137:13) at Route.dispatch (c:\wamp\www\node\node_modules\express\lib\router\route.js:112:3) at Layer.handle [as handle_request] (c:\wamp\www\node\node_modules\express\lib\router\layer.js:95:5) at c:\wamp\www\node\node_modules\express\lib\router\index.js:281:22 at Function.process_params (c:\wamp\www\node\node_modules\express\lib\router\index.js:335:12) at next (c:\wamp\www\node\node_modules\express\lib\router\index.js:275:10) at expressInit (c:\wamp\www\node\node_modules\express\lib\middleware\init.js:40:5) at Layer.handle [as handle_request] (c:\wamp\www\node\node_modules\express\lib\router\layer.js:95:5)

推荐答案

根据 API参考,第一个参数始终包含请求req,然后包含响应res.

According to the API reference, the first param always contain request req, then response res.

因此将第一个参数res更改为req:

So change first param res to req:

app.get('/', function(req, res) {
    res.send("Rendering file")
}

应该修复它.

这篇关于Node.js res.send不是函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆