Tag: 表示

req.body返回空对象(我已经包含bodyparser)

我是新来的后端JavaScript和我有一个表单提交应该显示提交的对象,但它显示一个空的对象,而不是。 我已经包括身体分析器,所以我不知道问题在哪里。 这是我的app.js文件: const express = require("express"); const app = express(); const mustacheExpress = require("mustache-express"); const bodyParser = require("body-parser"); const pgp = require("pg-promise")(); app.engine("html", mustacheExpress()); app.set("view engine", "html"); app.set("views", __dirname + "/views"); app.use("/", express.static(__dirname + "/public")); app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); app.get('/new_creature',function(req,res){ res.render('new_creature/index'); }); app.post('/new_creature', function(req,res){ res.end(JSON.stringify(req.body)); console.log(req.body); // res.render('new_creature/index'); }); 这里是我的意见/生物/ new_creature / index.html文件: […]

如何获得一个url作为Node.js中的参数?

码: app.get("/:url", function(req,res) { var url = req.params.url; res.send(url); }); 问题: 这不起作用。 如果我尝试: http://localhost:3000/https://www.google.com 我得到: Cannot GET /https://www.google.com

Node JS req.body未定义

我已经看了不less其他职位,我很迷茫。 我可以运行一个console.log(req)并获得以下输出 ServerResponse { … req: IncomingMessage { … url: '/my-endpoint', method: 'POST', statusCode: null, statusMessage: null, … body: { foo: 'bar' }, _body: true, … route: Route { path: '/my-endpoint', stack: [Object], methods: [Object] } }, … 看起来很稳定,所以我希望做console.log(req.body)并获得{ foo: 'bar' }回到控制台中…但是不行,得到undefined 经过研究,我发现它可能是我的app.js文件,特别是与一个body-parser ,但是,我已经所有的 var express = require('express'); var path = require('path'); var favicon = […]

如何才能发送一个快速响应,直到asynchronous循环完成后?

想要做下面的事情。 我认为这是asynchronous调用的问题,因为我发送的响应始终是一个空数组,但API正在返回数据。 相当新的这一点,任何input,非常感谢! app.get('/:id/starships', (req, res) => { let person = findPersonById(people, req.params.id)[0]; let starshipUrls = person.starships; for(let i=0; i<starshipUrls.length; i++){ axios.get(starshipUrls[i]).then(response => { starships.push(response.data); }) .catch(err => console.log(err)); } res.json(starships); })

我们如何使用Async,以及nodeJS中的最佳方式是什么

我试图传递一个查询到我的数据库,然后将结果发送到我的客户端,但它看起来像请求是asynchronous的,因为我的请求发生后,我的发布请求返回值。 如何设置等待请求? 我的数据库连接 var connection = mysql.createConnection({ host: 'localhost', user: 'root', password: 'my_password', database: 'MEETME' }); connection.connect(function(err) { if (err) { console.log("error while connecting to database"); console.log(err.code); } }); // function that query database <——- function queryDatabase(userQuery) { connection.query(userQuery, function(err, result) { if (err) { throw err; } console.log("before"); return result; }); } 这是我的发帖要求 //POST […]

反应路由与快速路由

看了很多教程,我看到有快速路由以及反应路由。 是客户端的反应路由和服务器(api?)的节点js路由。 想知道是否有人可以请澄清这是新的React,节点,快递。 谢谢

Express路由器发布function不起作用

宣言: var express = require('express'); var router = express.Router(); Route.js:在这里打电话 router.route('/signup') .post(function (req, res) { console.log('post signup called', req.body); res.json({message: 'signup'}); }); module.exports = router; req.body总是未定义的。 我能够在ajax调用中打印他们的控制台。 我不明白req.body是未定义的。 我错过了什么? Ajax的发布数据如下所示: $.ajax({ url: '/signup', type: 'POST', data: params, success: function (res) { console.log('res', res); }, error: function (err) { console.log('err', err); } }); 服务器js:这里已经使用了body-parser var express […]

Ubuntu中包含Express,MongoDB和Mongoose的Node.js中的REST API。 MongoError:第一次连接时无法连接到服务器

在运行我的快速应用程序时,遇到以下错误: bharti@bharti-Inspiron-3542:/media/bharti/New Volume1/Nodejs/rest-server$ npm start > rest-server@0.0.0 start /media/bharti/New Volume1/Nodejs/rest-server > node ./bin/www connection error: { MongoError: failed to connect to server [localhost:27012] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27012] at .<anonymous> (/media/bharti/New Volume1/Nodejs/rest-server/node_modules/mongodb-core/lib/topologies/server.js:328:35) at emitOne (events.js:96:13) at emit (events.js:188:7) at .<anonymous> (/media/bharti/New Volume1/Nodejs/rest-server/node_modules/mongodb-core/lib/connection/pool.js:274:12) at g (events.js:286:16) at emitTwo (events.js:106:13) at emit (events.js:191:7) at Socket.<anonymous> […]

当lint或Unit testcase失败时如何停止npm start?

我使用npm开始与lint和unit testing的情况下,如果lint或testing用例失败,npm不应该上api,但我无法做到。 这里是我使用的代码: "scripts": { "start": "gulp lint & npm test & node src/server/index.js", "test": "mocha –timeout 10000" }, 请帮助我为我做什么,我也在互联网上search,但没有得到正确的解决scheme。

为什么CSS和Bootstrap元素随着节点快递服务器消失?

我首先做了这样一个基本的节点服务器: var connect = require('connect'); var serveStatic = require('serve-static'); connect().use(serveStatic(__dirname)).listen(8080, function() { console.log('Server running on 8080…'); }); 然后我用这样的快递服务器取代它: var express = require("express"); var app = express(); var path = require("path"); app.get('/',function(req,res){ res.sendFile(path.join(__dirname+'/index.html')); }); app.use(express.static("public")); app.listen(8080); console.log("Running at Port 8080"); 第一个,一切正常。 CSS,JQuery,图片等等,但是第二个,我的一些风格元素完全消失了,无法到达网站上的图片。 我错过了什么? 我该如何解决?