Articles of angularjs

社交authentication – 在FE或BE方面做得更好?

如果我们想要进行社交authentication(例如Facebook或Google ),那么哪一方最好将其整合。 后端侧还是前端侧? 对于后端我们有NodeJS ,我们可以使用PassportJS来做到这一点,对于前端我们有Angular2.0 ,也有插件可以做到这一点。 我有点困惑这个代码应该驻留在哪一边。 如果有人对此有任何看法,请让我知道。

AngularJS显示MongoDB数据

我与AngularJS和MongoDb的交互有问题。 我在服务器端使用NodeJS和ExpressJS。 用mongoose,我跟Mongo说话。 我刚刚完成了路线。 index.js app.get('/api/dashboard', function (req, res) { Homepage .find({}, 'title -_id createdBy allbids.bid endTime') .exec(function (err, auctions) { if(err) res.send(err); console.log(auctions); res.json(auctions); }) }); 控制台显示我需要的所有字段。 然后我通过前端。 我以这种方式使用Angular路线: var app = angular.module('auction', [ 'ngRoute','HomeCtrl','NewAuctionCtrl', 'FollowingAuctionsCtrl', 'MyAuctionsCtrl']); app.config(function ($routeProvider, $locationProvider) { $routeProvider .when('/', { templateUrl: 'views/partials/dashboard.html', controller: 'HomeController' }) $locationProvider.html5Mode(true); }); 而我的HomeController是这样的: angular.module('HomeCtrl', []) […]

生产和开发中需要哪些节点模块?

除了在项目中使用的最小文件以外,是否可以安全地删除节点模块库中的其他文件夹 ? 例如:使用angular度uiselect库下拉 仅使用来自 – node_modules / dist / select.min.js,select.min.css的最小文件 (思考使用CDN,而在节点模块中创build的库是巨大的额外的文件夹,如src,文档,testing..)

使用快速会话在MEAN应用程序中检查有效会话的最佳方法是什么?

在MEAN项目中,我一直使用express-sessions ( https://www.npmjs.com/package/express-sessions )和angular-route来pipe理用户login/authentication。 一旦用户login或注册,他们的用户数据(例如整个User )就被分配给一个会话,然后用户被redirect到一个新的页面: #!/dashboard 。 为了防止用户在没有首先注册或login的情况下访问#!/dashboard ,我从我的angular度控制器快速地进行“会话检查”,该angular度控制器传递到angular度工厂,快速ping服务器端做一个会话对象的检查。 如果一个会话存在,我返回一个布尔值true ,如果一个会话不存在,我发送布尔值false 。 然后,我做了一个条件语句:如果为true,继续在#!/dashboard页面上(用户会话有效)继续抓取post或用户数据等。 如果为false,则redirect到/login页面所在的位置(防止用户访问#!/dashboard )。 这完成了我的目标,即防止用户在浏览器中进入/#!/dashboard ,而无需login/注册,但这似乎是一个昂贵的解决scheme,并不是很干净。 有没有一个更清洁或更好的方式来执行此“会话检查”,以防止没有有效的login会话访问我的后端页面? 我已经使用了快递中间件,也许有办法快速检查每个请求? 有没有人有任何build议,我可以改善我的会议检查?

Angular不会在HTML中显示我的数组结果

我得到了我的angular度的问题…我目前正在与套接字io的一个简单的聊天广播,但为什么我的数组对象不会显示在套接字io捕获发射后的HTML 这是我的index.html代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body ng-app='BaseModule'> <div ng-controller="ChatController"> <input type='number' name='sender' ng-model='sender' /> <input type='number' name='to' ng-model='to' /> <textarea name='message' ng-model='message'></textarea> <button type='button' ng-click='sendMessage()'>send it</button> <pre>{{ conversation }}</pre> </div> </body> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/1.7.3/socket.io.js"></script> <script type="text/javascript" src="angular.min.js"></script> <script type="text/javascript" src="base.js"></script> <script></script> </html> 这里是我的base.js的代码 var app = angular.module('BaseModule', []); app.run(function($rootScope) […]

PassportJS – 在将有效载荷数据传递给passport.authenticate作为请求参数之前获取

有一个passport.js实现正在用于LDAP-auth工作。 现在下一步是使用Crypto-js客户端的Crypto-js ,如下所示: Client-side angular-js controller $scope.authenticate = function () { var auth = new login(); auth.username = $scope.username; auth.password = CryptoJS.AES.encrypt($scope.password); //// HERE auth.$save(function (response){ console.log(response); },function(err){ console.log(err); }); } Server-side service ….. ….. app.post('/login', passport.authenticate('ldapauth'), (req, res) => { console.log("req.user: ",req.user); req.session.username = req.user[ldap.username]; req.session.userModel = req.user; res.status(200).send({"success": 'success'}); }); ….. 在调用passport.authenticate之前在服务器端的服务上,用请求'req'validationaesencryption的密码需要被解密。 这怎么能在这里实现呢? […]

为了执行基于Angular的应用程序,是否有义务运行节点服务器?

(说)我的项目是使用Laravel或简单的PHP在后端和我的前端编码使用Angular,我使用CDN的angular.js文件。 这应该是完美的。 我很困惑,当许多教程和书籍提到节点服务器是必需的,我们启动服务器,并开始监听某个端口。 运行angular度的过程完全不同于这种方式。 数据绑定或JSON格式的模型可以通过多种方式完成。 它可以从php后端交换,也可以通过运行在节点服务器上的JS完成。 实际上,我也可以运行一个没有任何服务器的Angular静态应用程序。 作为一个例子,我把JSON数据放在一些variables中,然后创build一个$ scope。 当然,数据会丢失(不能保存数据),但是应该运行。 对! 如果有人能澄清,我会高度赞赏,这是我的误解。

如何结合快递和angular度路线

我试图将Jade AngularJS和ExpressJS结合在一起。 我有一个app.js快递与Grunt运行服务器。 从那个app.js我把home.jade引导我到主页。 在主页里面,我有了angularJS。 我在AngularJS目录下创build了另一个app.js。 我如何将路线组合在一起? App.js(Express) var config = require('./config/config'); var express = require('express'); var bodyParser = require('body-parser'); var cors = require('cors'); var http = require('http'); var app = express(); app.use(cors()); app.use(bodyParser.urlencoded({extended:true})); app.use(bodyParser.json()); var oneDay = 86400000; app.use(express.static(config.root + '/public', { maxAge: oneDay })); app.set('views', config.root + '/app/views'); app.set('view engine', 'jade'); app.get('/', function(req, […]

使用$ http将数据从angularJS发布到Express

我想这样发送一些JSON数据从angularjsexpression/ nodejs AngularJS代码: $http({ method: 'POST', url: 'http://localhost:8000/api/auth', data: { name: user, password: passwd }, headers: { 'Content-Type': 'application/x-www-form-urlencoded' } }) .success(function(data, status, headers, config) { $scope.loginStatus = data; }) .error(function(data, status, headers, config) { $scope.lloginStatusogin = data; }); ExpressJS代码: var express = require('express'); var app = express(); var config = require('./config'); // get our […]

在angularjs中导入节点模块

我怎样才能导入一个模块,例如pikaday从另一个,例如从handsontable的angularjs中的handsontable? import {pikaday} from handsontable 似乎没有工作。