Tag: express

NodeJS从MongoDB中检索多个数据并在Jade上显示(Pug)

我有一些MongoDB集合,并需要在我的网站中显示它们,使其成为一个dynamic页面(这是团队成员,如果1被删除或添加,它应刷新页面上) 我的集合就像( mongodbterminal ): db.capitao.find() = { "_id" : ObjectId("59a6b67519404d41f9988524"), "nome" : "Renato", "email" : "example@gmail.c om", "imagem" : "renato.png", "curso" : "Engenharia Mecânica", "lider" : 1 } db.chassi.find() = { { "_id" : ObjectId("59a6b69f19404d41f9988529"), "nome" : "Carlos", "email" : "example@ufrgs.br ", "imagem" : "possebon.png", "curso" : "Engenharia Mecânica", "lider" : 1 } { "_id" […]

在Heroku上启用https

我有一个在Heroku上运行的应用程序,带有一个简单的API的Node.js后端和一个React.js前端。 请求代理到后端( http://localhost:5000 )。 当我从React ping API时,出现以下错误: Mixed Content: The page at 'https://**.herokuapp.com/users' was loaded over HTTPS, but requested an insecure resource 'http://localhost:5000/api/users'. This request has been blocked; the content must be served over HTTPS. 我怎样才能使资源安全?

我不能部署到Heroku

我正在用Node.js和Express构build一个站点。 $ git add . $ git commit -am "Heroku" $ heroku login $ heroku addons:create heroku-postgresql:hobby-dev $ git push heroku master 在上面的过程中,我尝试从Ubuntu部署到Heroku中出现以下消息&错误。 Counting objects: 12961, done. Compressing objects: 100% (11964/11964), done. fatal: Out of memory, malloc failed (tried to allocate 425298626 bytes) fatal: The remote end hung up unexpectedly fatal: The remote end hung […]

无法使用nodejs在db中的所有文档中插入子文档

我正在试图插入一个子文档到所有现有的文档中的一个集合在数据库中,在nodejs中使用快递框架。以下是代码片段: updatedoc: function(update,options,cb) { return this.update({},update,options).exec(cb); } 参数更新和选项如下: const update = { $push: { "defaultads": content }}; const options = { multi: true}; 它似乎运行,并在控制台上提供以下输出: { n: 1, nmodified: 1, ok: 1 } 但在数据库的任何文件中完全没有推送。 我已经检查:1)我是否在正确的分贝。 2)是否正确的值通过但是我无法find我要去哪里错了。 我是nodejs的新手,非常感谢解决这个问题的指导。 提前致谢。

保存第一次login历史logging后,ExpressJS应用login失败

我使用PassportJS,MongoDB(Mongoose)和JSON Web令牌实现了一个ExpressJS应用程序。 在成功login路线实施 await user.insertLoginTime(); const token = user.generateJwt(); res.status(200).json({ token }); Mongoose模型方法'insertLoginTime' userSchema.methods.insertLoginTime = async function() { try { const presentTime = new Date().getTime(); await this.loginHistory.push(presentTime); await this.save(); return; } catch (error) { throw new Error(error); } }; 首先login成功,“邮递员”收到令牌,但在接下来的尝试中返回无效的密码错误。 删除'insertLoginTime'方法成功login多次尝试。 在“insertLoginTime”实现中是否有任何错误?

上传目录不会发送带有文件的文件夹名称

我尝试了目录上传的新functionhttps://stackoverflow.com/a/8218074/2004910,但我没有收到确切的文件夹结构的服务器请求。 HTML <form action="http://localhost:3000/" method="post" enctype="multipart/form-data"> <input id="files" class="file" type="file" name="file[]" webkitdirectory directory> <input type="submit" /> 请求负载(networking面板) ExpressJS: const express = require('express') const app = express() var busboy = require('connect-busboy'); var fs = require('fs'); //… app.use(busboy()); app.post('/', function (req, res) { var fstream; req.pipe(req.busboy); req.busboy.on('file', function (fieldname, file, filename) { console.log("Uploading: " + filename); fstream […]

在html nodejs中显示mongodb数据

我们在MongoDB中保存了工作人员的详细信息。 同时,我们如何在HTML主页上获得工作人员的详细信息? 这是我保存的代码: //routes.js var User = require('../app/models/user'); app.post("/addname", (req, res) => { var myData = new User(req.body); myData.save() .then(item => { res.send("You are registered"); }) .catch(err => { res.status(400).send("Unable to save to database"); }); });

服务工作者在React应用程序中刷新后导致空白页面

我有一个部署到Azure的Node应用程序,一个testing分支通向一个分段实例,一个master分支指向了分发部署。 我的应用程序可以在本地应用程序的所有实例上正常工作,但是生产和临时存在一个问题,如果它们已经被caching,它们将不会加载,并且在刷新之后将显示为空白,最后将在caching重置时正常工作。 每当我刷新生产页面,它只是空白。 服务人员正在运行(我可以在chrome serviceworkers-内部工具中看到它),但该页面从不加载。 生成的文件引用是正确的。 你可以看到这里发生的事情的一个例子: Live Site ,然后你也可以看到testing站点也失败了,部署了完全相同的代码: testing站点 。 ServiceWorker实现的整体是从create-react-app开箱的。 我已经花了好几个小时的时间来尝试跟踪这个bug,在反应样板和创build反应应用程序回购下的各种GitHub问题,没有一个真正除了限制页面caching之外的任何地方,我试图做与无济于事有: 的index.html <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"/> <meta http-equiv="Pragma" content="no-cache"/> <meta http-equiv="Expires" content="0"/> 你可以find任何代码,你有任何代码在回收的托pipe所有这些代码的问题。 我只是用React / Node弄湿了自己的脚,所以我在墙上,并没有真正看到如何解决这个问题,而没有完全取消ServiceWorker的注册。 编辑:我完全从index.js文件中删除ServiceWorker代码,现在重新加载没有任何问题。 是否需要完成一个步骤才能让ServiceWorker正确地从caching中重新加载页面?

NodeJS,Express显示来自AJAX POST的HTML页面响应

将NodeJS与Express服务器一起使用时,当您转到http:// localhost:(Serverport)时 , NodeJS服务器会使用以下代码发送HTML文件进行响应: app.get('/', function(req, res){ res.sendFile(__dirname + '/login.html'); }); 现在我正在使用JQuery AJAX POST向服务器发送信息,并根据服务器响应将用户发送到HTML页面“/ index”,或者如果用户凭据不好,HTML页面“/ loginno”。 问题是AJAX不像在服务器获取函数响应中一样玩sendfile的服务器响应。 我从服务器获取文件,并在控制台中输出完整的HTML,但我不知道如何使浏览器以与服务器GET响应相同的方式进入页面。 这是我的Ajax函数,它可以从服务器获取HTML页面对象,但浏览器不会导航到页面。 $.ajax({ type: "POST", url: '/index', //A string containing the URL to which the request is sent. timeout: 2000, //A plain object or string that is sent to the server with the request. data: userdata, //The type […]

ValidationException:ExpressionAttributeValues不能为空

即使ExpressionAttributeValues不是空的它给我这个错误ValidationException:ExpressionAttributeValues一定不能是空的 app.post('/gpsfromuser', passport.authenticate('jwt', {session: false}), (req, res) => { var xcorpassed = req.body.xcor var ycorpassed = req.body.ycor console.log(xcorpassed); console.log(ycorpassed); var params = { TableName:passengers, Key:{ "pid": req.user.id }, UpdateExpression: "set cordx=:x, cordy=:y", ExpressionAttributeValues:{ ":x":xcorpassed, ":y":ycorpassed }, ReturnValues:"UPDATED_NEW" }; console.log("Updating the item…"); docClient.update(params, function(err, data) { if (err) { console.error("Unable to update item. Error JSON:", JSON.stringify(err, […]