Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var mongo = require("mongodb").MongoClient;
- var mongoErr = false;
- var ips = [];
- var app = require("express")();
- app.get("/register", function(req, res){
- res.sendFile(__dirname + "/register.html");
- });
- var bodyParser = require('body-parser');
- app.use(bodyParser.urlencoded({extended: false}));
- app.use(bodyParser.json());
- app.post("/register", function(req, res){
- if (req.body.nickname && req.body.password && req.body.confpassword && req.body.avatarurl && (ips.indexOf(req.connection.remoteAddress) == -1)) {
- if ((req.body.nickname.length > 3) && (req.body.nickname.length < 16)) {
- if ((req.body.password.length > 4) && (req.body.password.length < 86)) {
- if (req.body.confpassword == req.body.password) {
- if (req.body.avatarurl.slice(0, 7) == "http://") {
- if (!mongoErr) {
- function genTok(len, symbols) {
- if (len != 0) {
- return symbols[Math.round(Math.random() * symbols.length - 1)] + genTok(len - 1, symbols);
- } else {
- return "";
- }
- }
- mongo.connect("mongodb://localhost:27017/bechat", function(err, db){
- if (!err) {
- db.collection("users").insertOne({
- nickname: req.body.nickname,
- password: req.body.password,
- avatarurl: req.body.avatarurl,
- token: genTok(50, "qwertyuiopasdfghjklzxcvbnm1234567890")
- });
- ips.push(req.connection.remoteAddress);
- res.redirect("/register#success");
- } else {
- res.redirect("/register#fail");
- }
- });
- }
- }
- }
- }
- }
- } else {
- res.redirect("/register#fail");
- }
- });
- app.get("/style.css", function(req, res){
- res.sendFile(__dirname + "/style.css");
- });
- app.listen(3030);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement