Articles of redirect

为什么res.redirect('/')不起作用?

我正在Node.js上使用Express框架实现一个简单的login/注销场景。 对于login我没有任何问题:点击“login”后,提供正确的用户名和密码,用户被正确redirect到clientPage: //POST route for logging in router.post('/login', function (req, res, next) { if (req.body.logusername && req.body.logpassword) { User.authenticate(req.body.logusername, req.body.logpassword, function (error, user) { if (error || !user) { var err = new Error('Wrong email or password.'); err.status = 401; return next(err); } else { req.session.userId = user._id; return res.redirect('/clientPage'); } }); } else { […]

ng-click之后的AngularJSredirect

我有一个REST API读取/保存MongoDB数据库的数据。 我使用的应用程序检索表单并从中创build一个对象(作业),然后将其保存到数据库。 表单之后,我有一个button,点击事件触发我的控制器的保存function,然后redirect到另一个url。 一旦我点击button,我说这个工作已经被添加到数据库中,但是应用程序被卡住,redirect从不被调用。 但是,如果我重新加载我的应用程序,我可以看到新的“工作”已被很好地添加到数据库中。 这是怎么回事? 谢谢 ! 这是我的代码: 示例html(翡翠)代码: button.btn.btn-large.btn-primary(type='submit', ng:click="save()") Create angular度模块的控制器: function myJobOfferListCtrl($scope, $location, myJobs) { $scope.save = function() { var newJob = new myJobs($scope.job); newJob.$save(function(err) { if(err) console.log('Impossible to create new job'); else { console.log('Ready to redirect'); $location.path('/offers'); } }); }; } angular度模块的configuration: var myApp = angular.module('appProfile', ['ngResource']); myApp.factory('myJobs',['$resource', function($resource) […]

Node.js页面redirect在AJAXlogin? redirect后有函数调用吗?

“/故事”页面是用户特定的,需要有效的login凭据。 validation是由节点,服务器端,并在redirect之前正确logging,但不redirect到故事页面。 这似乎是因为“ 你不能在AJAX之后进行redirect,你需要用Javascript自己来做 ”,但是这个问题的第一个答案中的代码似乎有些不完整。 另外,如何在redirect后成功调用后续函数(refreshStories)? 这里是AJAX: if (loginUsername.length != 0) { console.log('there is a login: ' + loginUsername); // make an ajax call $.ajax({ dataType: 'json', data: AjaxLoginData, type: 'post', url:"http://localhost:4200/api/v1/users", success: (data, textStatus, jqXHR) -> if typeof data.redirect == 'string' window.location = data.redirect success: refreshStories, error: foundError }); Node.js + Express4 router.route('/users') // […]

如果没有`www`,域名无法正常工作,那么node.js中的解决scheme是什么?

我知道这个问题已经被问到域名不工作没有www 但是我需要一个解决scheme,用于托pipe在heroku上的node.js应用程序,以及使用名为komodo的namecheap 另外,我发现这个类似的东西 ,我根本不明白。 有人可以举例说明如何在node.js中处理这个问题吗? 详情:我正在使用快递。 在Heroku我有 langtime.me(Domain Name) yamanashi-3938.herokussl.com (DNS Target) www.langtime.me(Domain Name) yamanashi-3938.herokussl.com(DNS Target) 在Namecheap中我有: @ | https://www.langtime.me | URL redirect www | yamanashi-3938.herokussl.com. | CNAME

模拟一个HEAD请求redirect(通过nock模块)

在我的项目中,我尝试扩展推文以充分显示。 由bit.ly缩短的链接被这个和平的代码扩展(find@ stackoverflow)。 function expandUrl(shortUrl,callback) { debug("expandUrl"); request( { method: "HEAD", url: shortUrl, followAllRedirects: true }, function (error, response) { if (error) return callback(null,shortUrl); return callback(null,response.request.href); } ); } 在摩卡testing期间不需要在线,我想用下面的代码来禁止这部分代码: nock('http://bit.ly') .intercept("/1Ghc7dI","HEAD") .reply(200,undefined,{location:"http://discoverspatial.com/courses/qgis-for-beginners"}); 但是这不起作用。 这个工作后,response.request.href是“undefined”。 (我试过href而不是位置,这没有什么区别。

如何redirect到chrome-devtools://协议?

我已经写了一个Node.js应用程序,您可以(当然)使用Chromedebugging协议进行debugging,如果您使用最新的Node.js版本之一: $ node –inspect app.js 这将打印一个URL( chrome-devtools://… )到terminal。 如果我复制这个URL并将其粘贴到Chrome中,debugging器打开并且一切正常。 现在,这个URL很长,我希望它变得更短。 所以我的想法是运行一个非常简单的Node.js服务器,只需将传入的http请求redirect到此url。 使用一些testing,我确保发送正确的标题和状态码等等。 但是 – 这是行不通的。 如果我打电话给我的redirect服务,我只能得到答案,服务器发送一个空的答复。 没有redirect正在发生。 我错过了什么? 如何redirect到chrome://扩展可能暗示,这是不可能的,但我不知道我可能有什么其他的select(当然,除了长期的生活)。

如何使用节点JSredirect?

我正在尝试在提交表单后将页面redirect到我的主页(使用path'/ search')。 在我的submit.html文件中,我有一个表单,当按下提交button时,表单中的数据通过“/ submit”提交方法提交。 在我的index.js文件中,我有一个'/ submit'的get和post函数,以便我可以访问MongaDB和集合。 这里是function: //getting info from the database router.get('/submit', function(req, res) { //RETURN JSON OF INTINERARIES var db = req.db; //Creates a variable called db, which equals the database called db (db holds the collegelist collection) var collection = db.get('collegelist'); //Creates a variable called collection which accesses the collection called collegelist […]

如何在NodeJS / ExpressJS中正确redirect?

我在nodejs / expressjs中构build一个购物车应用程序。 我在用户login后redirect到正确的页面时遇到了一些问题。我发现了几篇紧密联系的文章,但是我所有的尝试从给定的文章中解决这些问题并没有起到什么作用。 access: function(req, res){ var data = JSON.parse(req.body.data); console.log(data); Customers.findOne({"custEmail": data.custEmail}, function(err, user){ if(err){ console.log(err); res.send("error"); }if(!user){ console.log("user not found"); res.send("error"); }else{ console.log("user found"); bcrypt.compare(data.custPassword, user.custPassword, function(err, reponse){ if(reponse){ req.session.regenerate(function(err){ if(err){ console.log(err); res.send("error"); }else{ req.session.success = true; res.send("Success"); //res.redirect('/'); } }); }else{ console.log("error"); } }); } }); 会发生什么事是,用户input他们的login信息并单击loginbutton。 Ajax请求将数据发送到此访问函数。 该function首先检查用户是否存在于数据库中。 如果它比继续比较bcrypt密码,如果他们相等,他们成功login,如果他们不相等,那么显然它错误了。 这个问题似乎在这里: […]

将客户端路由到node.js中的外部站点?

这可能是愚蠢的,或者是不可能的,但是在我看来这是值得一提的。 原因是因为我试图演示一个快速和肮脏(笑)缩短url的应用程序。 app.get('/link/:key', function(req, res){ client.get(req.params.key, function(err, reply){ if(client.get(reply)){ // route to reply here } else{ res.render('index', { link: null }); } }); }); 如果可能,我将如何执行该路线?

无限redirect服务器端http请求

我使用node.js,但我有一种感觉,这不一定与节点有关 – 无论如何 我正在编写一个url缩短在节点,我想击中缩短的url,以获得页面标题 – 这在大多数情况下,通常遵循redirect,等等适当,等等。 但是,当我点击gmail.com,它进入一个无限的redirect循环 – http://gmail.comredirect到https://www.google.com/accounds/ServiceLogin?service=mail&passive=true&rm=false&continue= …而这又转向自己永远。 我的代码基本上是这样的 var http = require('http'), https = require('https'), URL = require('url'), querystring = require('url'); var http_client = {}; function _makeRequest(url, callback) { var urlInfo = URL.parse(url); var reqUrl = urlInfo.pathname || '/'; reqUrl += urlInfo.search || ''; reqUrl += urlInfo.hash || ''; var opts = […]