javascript - How do I redirect to another page like google using Nodejs? -


i trying number stored in short variable. on database specific shorturl matches number. if find want response full url, let's suppose www.google.com.

so when user type, instance: localhost:8888/3451 redirect www.google.com.br

app.get('/:short', function(req, res){     var short = req.params.short;     shorturl.find({shorturl: short}).then(function(result){         var urlsearch = result[0]["url"]; //www.google.com         res.redirect(urlsearch) //doesnt work      }); }); 

how can this?

try code.this works charm!!!!!!. firsrt create models folder , place file in shorturl.js

var mongoose = require('mongoose'); var schema = mongoose.schema; var url = new schema({     shorturl:     {         type : number     },     url:     {         type : string     }         });  module.exports = mongoose.model('url', url); 

next create routes folder place file in urls.js

var express = require('express'); var bodyparser = require('body-parser'); var mongoose = require('mongoose'); var shorturl = require('../models/shorturl'); var app = express(); var url = express.router(); url.use(bodyparser.json()); url.route('/:short') .get( function(req, res){     var short = req.params.short;      shorturl.find({shorturl: short}).then(function(result){          var urlsearch = result[0]["url"];         res.redirect('https://'+urlsearch) //doesnt work }); }); url.route('/num') .post(function(req,res){       shorturl.create(req.body,function(err,url){ if (err) return console.log(error);          return res.send(url);      });  })     app.use('/url',url);   module.exports = url; 

next create config file can give connections config.js

module.exports = {     'secretkey': '12345-67890-09876-54321',     'mongourl' : 'mongodb://localhost:27017/redirect' } 

and create server file express.js

 var express = require('express');     var passport = require('passport');     var localstrategy = require('passport-local').strategy;     var config = require('./config');     var mongoose = require('mongoose');     mongoose.promise = require('bluebird');     mongoose.connect(config.mongourl);     var db = mongoose.connection;     db.on('error', console.error.bind(console, 'connection error:'));     db.once('open', function () {          console.log("connected correctly server");     });      var app = express();      var url = require('./routes/url');      var shorturl = require('./models/shorturl');     app.use('/url',url);      app.listen(3000,function(){     console.log("server listening on port 3000");     }); 

output : run code node express.js

whenever want post use http://localhost:3000/url/num , give details in json format.whenever want i.e.,redirect aany page use http://localhost:3000/url/:shrot.here :short nothing number should passed parameter.hope helps you.


Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -