Articles of 表示

把手和Javascript

在把 partials包含js文件作为partials是一个好习惯? 我的意思是,我需要在我的基于jquery的javascript中使用来自nodejs一些数据,并且做到这一点,我加载我的js作为partials模板中的部分,然后直接使用句柄符号,这样: $(document).ready(function() { var myVar = {{value_from_db}}; }); 我知道这不是正确的方法,我希望我已经解释了我需要的东西。 在我的情况下,我需要在js使用MapBox坐标,坐标是从数据库中获取的,方法如下: var map = L.mapbox.map('map', 'mapbox.streets', { zoomControl: false, attributionControl: false }).setView([my_lat, my_lng], 3);

快递:是否有可能简化res.sendFile中的path?

这是我的目录结构: /用户/蒂蒂/ myproject的/应用/服务器/ …. app.js …./上市 …….. / CSS …….. / JS ……../视图 …………的index.html ………… about.html 和我的app.js文件: var express = require('express'); var app = express(); app.use(express.static('public')); app.get('/', function (req, res) { res.sendFile('/Users/Titi/myproject/app/server/public/view/index.html'); }); app.get('/about', function (req, res) { res.sendFile('/Users/Titi/myproject/app/server/public/view/about.html'); }); app.listen(2000, function () { console.log('Example app listening on port 2000!'); }); 它完美的作品。 但是我想知道是否有办法不必编写整个path(/Users/Titi/myproject/app/server/public/view/about.html)。 可以简化吗?

Node Express中的自定义URL

我需要保存完整的path作为一个string进一步处理,即 本地主机:3000 / ABC / XYZ /等 会给我: “/ ABC / XYZ /等” 我试过了 app.get('/.+:path', function(req, res) { console.log('path:'+req.params[0]); }); 但它不起作用。 有任何想法吗?

在TypeScript中,我该如何实现一个接口(a:type,b:type):any?

具体来说,我试图设置服务器双面打字稿的快递。 公开的接口之一是RequestHandler,具有以下结构: // express-serve-static-core/index.d.ts declare module "express-serve-static-core" { … interface RequestHandler { (req: Request, res: Response, next: NextFunction): any; } } 我写了下面的课: import * as express from "express"; class PageNotFound implements express.RequestHandler { constructor (req: express.Request, res: express.Response, next: express.NextFunction) { let viewFilePath: string = "404"; let statusCode: number = 404; let result: Object = […]

Express-StormPathauthentication

我正在尝试使用StormPath访问令牌对node.js express Web应用程序进行身份validation。 初始页面启动(索引)工作正常,但后续访问(约)不能按预期使用cookie会话。 以下是代码片段。 app.js —- app.use(stormpath.init(app, { apiKey: { id: appConfig.stormpath.id, secret: appConfig.stormpath.secret }, application: { href: appConfig.stormpath.href }, web: { register: { enabled: false }, accessTokenCookie: { domain: "localhost", httpOnly: true, path: "/", secure: null }, refreshTokenCookie: { domain: "localhost", httpOnly: true, path: "/", secure: null } } })); index.js(路由器) router.get('/', stormpath.loginRequired […]

将angular2-webpack-starter与NodeJS API REST集成

我想学习angular2 webpack materlias2节点…等…我开始使用和修改这个样板: angular2-webpack-starter 现在我还想学习nodejs作为Web服务器(使用快速框架或任何你build议的,一个MySQL的ORM等)。 我的问题是:现在我已经创build了我的示例项目(来自angular2-webpack-starter),我已经创build了一个傻瓜ajax调用,我怎样才能将我的项目与用NodeJS写的API REST集成? 你能提供一个简单的例子代码? 另外,从angular2-webpack-starter样板开始,哪里可以放置所有API rest服务器代码? 任何其他build议将不胜感激 非常感谢你

Express提供的404页面的相对path

我正在使用Express服务404页面: server.use(function(req, res, next) { res.status(404).sendFile('404.html', { root: __dirname + BASE }) }) 404.html位于网站的根目录中,如果我尝试在根目录( http://mywebsite.com/asd )上打开一个不存在的页面,所有内容都是完美无缺的。 问题是当我尝试打开其他文件夹( http://mywebsite.com/asd/asd )内的页面。 我的css和js的path不受尊重: <link href="dist/bundle.min.css" rel="stylesheet"> 如何解决这个path相关的问题? 在生产服务器上使用sendFile服务页面是否安全?

只能发出一个GET请求,而不会出现错误:“发送后无法设置标题”。

我想我的http服务器返回从asynchronous函数返回的一些json。 我设法使它工作,但它只能工作一次,然后抛出:“发送后无法设置标题。 错误。 这里是下面的代码: var server = restify.createServer(); server.get('/', function(req, res, next) { feed("dilma",[]); eventEmitter.on('retorno', function(retorno){ res.send(retorno); }); }); server.on("listening", function() { console.log("server running!"); }); server.listen(7171); 进给function: var feed = function headLinesBySite(word, l) { if (!Array.isArray(l)) { console.log("por favor passe um array"); return false; } if (l !== []) { links = l; } links […]

不能GET / POST? 在expression错误?

我有一个非常简单的快速代码 var express = require("express"); var bodyParser = require("body-parser"); var http = require("http"); var path = require("path"); var app = express(); app.use(bodyParser.urlencoded({ extended: false })); app.set("views",path.resolve(__dirname,"views")); app.set("view engine","ejs"); app.get("/",function(req,res){ res.render("index"); }); app.post('/', function(req, res) { console.log("posted!"); res.render("final"); }); http.createServer(app).listen(3000); 现在,当我尝试访问本地主机:3000一切都加载好,在index.ejs我有一个简单的forms与input名称mname,whan我在input框中命名,然后按Enter我得到这个错误 Cannot GET /POST?mname=a 我在代码中定义了一个app.post,并要求它呈现final.ejs。 那么代码出错了? 试过其他问题,说快递4个用户“路由器”进行路由,尝试过,但也失败了。

我可以在EJS中渲染多个源文件吗?

我试图使用来自2个不同来源的数据,但使用EJS,JS和节点将它们呈现在相同的HTML页面上。 这是我正在尝试.. app.set('view engine', 'ejs'); app.get('/', function(req, res) { res.render('index.ejs', { data: JSONdata }) res.render('index.ejs', {data2: arrayData}) }); 数据是一个JSON,data2是一个数组。 我试图查找正确的语法,但似乎无法find任何东西。 非常感谢。