Articles of express

Node.js,PostgreSQL错误:主机没有pg_hba.conf条目

我正在关注这篇文章(( http://nodeexamples.com/2012/09/21/connecting-to-a-postgresql-database-from-node-js-using-the-pg-module/ )。我已经将我的应用程序部署到heroku,并使用express,node.js,尝试连接到我刚安装的Heroku中的PostgresSQL数据库,到达文章的最后,我使用命令 node myfile.js 我得到这个错误 error: no pg_hba.conf entry for host "…", user "…", database "…", … 我该如何去创build一个,并在我的应用程序目录中放置它? 下面是整个错误信息。 我更改了IP地址,用户和数据库的string,但它看起来基本上就像它。 events.js:72 throw er; // Unhandled 'error' event ^ error: no pg_hba.conf entry for host "00.000.000.00", user "username", database "databasename", SSL off at Connection.parseE (/Users/user/workspace/MyApp/app/node_modules/pg/lib/connection.js:526:11) at Connection.parseMessage (/Users/user/workspace/MyApp/app/node_modules/pg/lib/connection.js:356:17) at Socket.<anonymous> (/Users/user/workspace/MyApp/app/node_modules/pg/lib/connection.js:105:22) at Socket.emit (events.js:95:17) at […]

如何在node.js中使用express框架来提供图像文件?

在我的应用即时通讯使用快递框架来服务客户端文件。但同时给HTML元素的背景图像。它显示未能加载给定的url。 var express = require('express') , http = require('http'); var app = express(); app.configure(function(){ app.use(express.static(__dirname + '/public')); }); var server = http.createServer(app); var io = require('socket.io').listen(server); server.listen(8000); 在公共文件夹中,我已经创build了JavaScript,样式表,图像folder.Now我得到的JavaScript和stylesheets.But我不知道如何访问图像文件。 .logo { background:url('localhost:8080\logo.jpg');//This image url not loading float:left; width:20px height:20px; }

ExpressJS:如何忽略我的路由中的公共静态文件?

app.get("/:name?/:group?", function(req, res){… 是匹配在我的公共目录中的文件。 所以,如果我包括一个样式表: <link type="text/css" href="/stylesheets/style.css" /> 节点将匹配/stylesheets/style.css并为值样式表分配名称 ,并将值style.css 分组 。 避免这种情况的最好方法是什么?

require('https')vs require('tls')

我正在尝试使用Node.js,Express.js和TLS(1.2)在客户端和服务器之间创build一个非常安全的连接。 我认为我的问题在于理解TLS究竟是什么 – 意味着什么在交换,什么时候以及如何由谁来交换。 无论如何,我正在寻找像一个疯狂的人(疯狂的人)互联网试图找出如下: 什么是var tls = require('tls'); 调用? 什么是var https = require('https'); 调用? 当使用另一个节点作为客户端时,我可以使用它,但在这种情况下,客户端将是浏览器中的用户。 我可以同时使用浏览器或仅https? 谢谢

推向Heroku的错误(node.js)

当我将一个默认的快速应用程序推到heroku时,出现以下错误。 我已经确保我与Herokuku-toolbelt等最新,但似乎是从heroku方面的错误? 有没有人看过这个? 它推动正常,按预期工作,但我怀疑这可能会导致未来的问题。 Counting objects: 7, done. Delta compression using up to 4 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (4/4), 404 bytes, done. Total 4 (delta 1), reused 0 (delta 0) —–> Heroku receiving push —–> Node.js app detected /app/slug-compiler/buildpacks/nodejs2/vendor/json/json:425 return runInNewContext("(" + JSON.stringify(datum) + ")" + lookupCode); ^ TypeError: Cannot […]

通过Mongoose的ObjectId查找MongoDB文档

我正在尝试通过ObjectId来查找MongoDB中的文档。 工作stream程如下(这是一个博客)。 通过传递标题和正文在MongoDB中创build一个新post。 ObjectId是自动创build的。 去编辑post。 它使用来自URL的ObjectId从数据库中获取数据,并以相同的新postforms显示它,只是使用预先存在的值。 当提交button被点击时,我想通过ObjectIdfind文档,并使用后表单中的值更新数据库中的值。 步骤1和2工作正常,但步骤3似乎并没有工作。 它redirect到我需要的页面。 但数据库尚未更新。 这和以前一样。 以下是更新post部分的相关代码: app.js app.post "/office/post/:id/update", ensureAuthenticated, routes.updatePost 路线/ index.js mongoose = require 'mongoose' ObjectId = mongoose.Types.ObjectId Post = require '../models/Post' … updatePost: function(req, res) { var o_id, the_id; the_id = req.params.id; console.log(the_id); // 510e05114e2fd6ce61000001 o_id = ObjectId.fromString(the_id); console.log(o_id); // 510e05114e2fd6ce61000001 return Post.update({ "_id": ObjectId.fromString(the_id) }, […]

Socket.io会话没有express.js?

我想通过node.js和socket.io来处理websocket的会话,而不必使用cookie并避免express.js,因为还应该有客户端不在浏览器环境中运行。 有人已经这样做了,或者有了一些概念validation的经验?

从节点服务器随机stream式传输pdf文件只是在浏览器上显示二进制数据

我有一个节点的应用程序(特别是帆应用程序)是服务的PDF文件。 我的代码服务文件看起来像这样。 request.get(pdfUrl).pipe(res) 而当我查看PDF的url,它呈现PDF罚款。 但有时,它只是呈现在浏览器上的PDF二进制数据如下所示。 %PDF-1.4 1 0 obj << /Title ( ) /Creator ( wkhtmltopdf 我无法弄清楚为什么不能正确地随机提供pdf。 这是铬的东西? 还是我错过了什么?

通过node-http-proxy持久基于cookie的会话

我有一个简单的基于Express的Node.js Web服务器,用于开发JavaScript应用程序。 我将服务器设置为使用node-http-proxy来代理应用程序对运行在不同域和端口上的Jetty服务器的API请求。 直到我开始遇到会话pipe理问题时,此设置一直在完美运行。 在authentication之后,应用服务器返回一个带有代表服务器会话的authentication令牌的cookie。 当我从我的文件系统(file://)运行JS应用程序时,我可以看到,一旦客户端收到cookie,就会在所有后续的API请求中发送。 当我在节点服务器上运行JS应用程序,并通过node-http-proxy(RoutingProxy)代理API调用时,请求标头永远不会包含cookie。 有什么我需要手动处理,以支持通过代理这种types的会话持久性? 我一直在挖掘node-http-proxy代码,但是由于我是Node的新手,所以这个代码有点过头了。 https://gist.github.com/2475547或者: var express = require('express'), routingProxy = require('http-proxy').RoutingProxy(), app = express.createServer(); var apiVersion = 1.0, apiHost = my.host.com, apiPort = 8080; function apiProxy(pattern, host, port) { return function(req, res, next) { if (req.url.match(pattern)) { routingProxy.proxyRequest(req, res, {host: host, port: port}); } else { next(); } } […]

阻止访问AngularJS中的pipe理页面

我想知道AngularJS中最好的方法是保护pipe理页面,即普通用户不应该看到的页面。 显然,会有后端authentication,但由于AngularJS应用程序是客户端,人们仍然可以从理论上看路由,直接转到这些URL并查看pipe理页面。 我使用Express,PassportJS和MongoDB(Mongoose)作为我的后端。 自然,他们将无法与pipe理页面进行交互,因为在创build,删除服务器端身份validation,但我宁愿甚至不提供页面给用户,如果他们没有适当的访问。 由于该应用程序是完全客户端JS,但我认为这是不可能的,因为人们可以修改路由和其他东西。 最好的办法是什么呢? 感谢您的任何意见!