Tag: 表示

上传后无法删除文件

我用multer包上传文件。 而且我使用sharp来调整和复制许多文件,所以我不能删除第一个上传文件。 这是我的代码 var multer = require('multer'); var upload = multer({dest: 'upload/'}); app.route('/uploadIcon') .post(upload.single('file'), uploadfunction); function uploadfunction(req, res) { var dir = './app/controllers/configs/' + req.body.domain; if (!fs.existsSync(dir)) { fs.mkdirSync(dir); } if (!fs.existsSync(dir + '/icon.iconset')) { fs.mkdirSync(dir + '/icon.iconset'); } var dir_icon = dir + '/icon.iconset/'; var file = dir + '/icon.iconset/' + 'default.png'; fs.rename(req.file.path, file, […]

节点api在几分钟后失败

我已经用express中间件安装了nodejs应用程序。 贝娄是我的代码: var express = require("express"); var app = express(); var bodyParser = require("body-parser"); var router = express.Router(); var cors = require('cors'); var fs = require('fs'); var https = require('https'); app.use(cors()); app.use(bodyParser.json({limit: '50mb'})); app.use(bodyParser.urlencoded({ limit: '50mb', "extended": false })); app.use(express.static(path.join(__dirname, './demo'))); router.get("/", function (req, res) { res.json({ "error": false, "message": "Hello World" }); }); app.use('/api', […]

我如何强制删除会话ID cookie与快速会议?

我正在使用快速会话模块来设置到期年龄的会话。 在这个年龄之后,当页面被刷新时,cookie将被删除。 但是,比如当用户注销时,我想强制删除这个cookie。 我已经使用req.session.destroy.成功销毁了会话req.session.destroy. 我试过使用: res.clearCookie('SID').status(200).send('Page'); 里面req.session.destroy,虽然,如果我在浏览器中查看cookie的详细信息,我看到内容设置为什么都没有,过期date设置为Thursday, 1 January 1970 at 01:00:00,虽然cookie不会删除自己。 我还设置了未unset: 'destroy'会话存储configuration中的unset: 'destroy' ,但这并没有解决我的问题。 中间件: app.use(session({ store: new MemoryStore({ checkPeriod: 86400000 }), cookie: { secure: true, maxAge: 10000 }, secret: secret, resave: false, saveUninitialized: false, name: 'SID', unset: 'destroy' })); 提前致谢。

如何在node.js / express路由器中声明一个强制参数

我有一系列的路线,如: var router = express().Router; router.get('/',middleware1,middleware2); router.get('/courses',middleware1,middleware2,..) router.post('/dates',middleware1,middleware2,..) app.use('/u',router); 现在,当我声明的路线的根 app.use('/u',router); 我想把一个强制性的参数,必须出现在微型应用程序的每一个路线 app.use('/u/:user_name/',router); 所以我可以检查每个路由与router.param存在这个参数在数据库中。 是这样的可能性,通过定义在微应用程序的根,而不是像每一个单一的路线参数 router.get('/:user_name/',middleware1,middleware2); router.get('/:user_name/courses',middleware1,middleware2,..) router.post('/:user_name/dates',middleware1,middleware2,..) 因为它们在实际应用中实际上是很多的,将它们全部改变是一种痛苦? 真的感谢 !

使用Firebase身份validation和Express身份validation社交login?

我对Firebase颇为陌生,对Express也稍微有点新,而且我很难尝试使用Firebase提供的身份validationstream程。 我有这个路由,但每次我点击触发路由的button,我得到这个错误This operation is not supported in the environment this application is running on. "location.protocol" must be http, https or chrome-extension and web storage must be enabled. This operation is not supported in the environment this application is running on. "location.protocol" must be http, https or chrome-extension and web storage must be enabled. 我很确定networking存储已启用,但我很不确定如何修复location.protocol 。 […]

configurationNode.js / Express服务器以使用React-Router BrowserRouter

在React Router v4中, 文档提到服务器需要专门configuration为使用BrowserRouter。 你如何configuration你的Node.js / Express服务器来使用BrowswerRouter?

为什么Express.js路由select不正确的路由?

所以我有以下路线: app.delete('/project/:id', crud.deleteProject); app.delete('/project/resource/', crud.removeResourceFromProject); 当我使用URL http://mysite.no/project/resource/运行ajax调用时: delete: function(url,data) { return $.ajax({ url: url, type: "DELETE", dataType: 'json', data: data }); Express运行crud.deleteProjectfunction。 如果我将其注释掉或移动到其他路线下方,则按预期工作。 为什么是这样?

expressjs路由不工作一个简单的路线,但console.log正在工作,这是放置在res.render

forgot.js /* eslint-disable */ import express from 'express'; const router = express.Router(); router.get('/', (req, res, next) => { console.log('forgot'); res.render('forgot', { title: 'Forgot Password' }); }) export default router; app.js import bodyParser from 'body-parser'; import cookieParser from 'cookie-parser'; import Debug from 'debug'; import express from 'express'; import logger from 'morgan'; // import favicon from 'serve-favicon' […]

Node.js TypeError:无法读取未定义的属性“path”

我已经看了很多同样的问题的答案,但我还没有find一个工作的解决scheme。 我试图做一个Web应用程序,您可以上传文件使用快递和MULTER,我有一个问题,没有文件正在上传和REQ.FILE总是未定义。 Express和Mul版本为: "express": "^4.15.4", "multer": "^1.3.0" 我的configure.js看起来这样: multer = require('multer'); module.exports = function(app) { app.use(morgan('dev')); app.use(multer({ dest: path.join(__dirname, 'public/upload/temp')}).single('file')); routes(app); app.use('/public/', express.static(path.join(__dirname, '../public'))); 消费代码如下所示: var tempPath = req.file.path, ext = path.extname(req.file.name).toLowerCase(), targetPath = path.resolve('./public/upload/' + imgUrl + ext); if (ext === '.png' || ext === '.jpg' || ext === '.jpeg' || ext === '.gif') […]

express js API中的端点URI

我很困惑用于testing任何API的输出的URI。 例如,我有一段代码使用POST方法将用户写入数据库。 Usercontroller.js router.post('/', function (req, res) { User.create({ name : req.body.name, email : req.body.email, password : req.body.password }, 现在我将这个路由器导出到另一个文件。 var Usercontroller = require('./user/UserController.js'); var users = app.use('/users',UserController); 现在当我开始使用这个URI监听端口8082: http:// localhost:8082 / users时,我得到了预期的结果。 我想在发送到router.post的请求string中进行更改。 我试图改变var users = app.use('/ users',UserController); 但是这不起作用。 任何人都可以解释URI如何在express或node中工作。 我正试图理解这个概念!