mysql请求后节点JS重定向

用户3198601

我正在尝试使用节点JS和MySQL创建一个注册页面,除了我无法在其他页面上重定向用户之外,所有页面都在工作。它没有考虑表单中的“操作”,我无法在server.js中使用window.location,并且在尝试时:

response.writeHead(301,
  {Location: 'index.html'}
);

我得到了永久移动的错误。

所以,这是我的表格:

<form method="post" action="index.html" id="registerForm">
            <label for="username">Username</label>
            <input type="text" name="username" placeholder="Username" id="username" /><br/>

            <label for="password">Password</label>
            <input type="password" name="password" placeholder="Password" id="password" /><br/>


            <label for="password_bis">Confirmation</label>
            <input type="password" name="password_bis" placeholder="Password" id="password_bis" /></span><br/>

            <label for="language">Language</label>
            <select name="language" id="language">
               <option value="fr">Français</option>
               <option value="en">English</option>
            </select>

            <input type="submit" value="Submit" />
        </form>

这是我的js检索内容:

    $(document).ready(function(){

    $("#registerForm").submit(function (e) {
        e.preventDefault();
        $.post("http://localhost:1337", { username: $("#username").val(), password: $("#password").val(), language: $("#language").val() } );
    });
});

这是我的服务器:

var http = require('http');
var queryString = require('querystring');

var server = http.createServer( function(req, res) {
  if (req.method == 'POST') {
    var requestBody = '';
    req.on('data', function (data) {
      requestBody += data;
    });
    req.on('end', function () {
      var postData = queryString.parse(requestBody);
      if(postData.username && postData.password && postData.language)
      {
        var post  = {username: postData.username, password: postData.password, language: postData.language};
        var query = connection.query('INSERT INTO user SET ?', post, function(err, result) {
          if (err) throw err;
          else {
            res.writeHead(200, {'Content-Type': 'text/plain', 'Access-Control-Allow-Origin': '*'});
            res.end();
          } 
        });
      }
    });
  }
}).listen(1337);

var mysql = require('mysql');

var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : '',
  database: 'test'
});

connection.connect(function(error) {
    if (error) {
        return console.log('CONNECTION error: ' + error);
    }
});

谢谢

本节代码:

$("#registerForm").submit(function (e) {
    e.preventDefault();
    $.post("http://localhost:1337", { username: $("#username").val(), password: $("#password").val(), language: $("#language").val() } );
});

应该删除。

这导致您的请求通过AJAX发送到服务器,并且无法从那里重定向页面。如果删除代码,它应该可以正常工作。

如果必须使用javascript(以预处理表单或其他方式),则可以发送一个位置以通过重定向到response.send,然后在发布处理程序中使用window.location。

您的客户端代码应如下所示:

$("#registerForm").submit(function (e) {
    e.preventDefault();
    $.post("http://localhost:1337", { 
        username: $("#username").val(), 
        password: $("#password").val(), 
        language: $("#language").val() } ).success(function(data){
            window.location = data;
        });
    });
});

您对应的服务器端代码将如下所示:

res.end('index.html');

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

基本重定向节点js

来自分类Dev

提交表单后,节点JS重定向

来自分类Dev

节点js中的日志文件重定向

来自分类Dev

茉莉花节点与请求-测试重定向的端点不遵循重定向

来自分类Dev

执行后节点JS函数未定义

来自分类Dev

从特定请求重定向

来自分类Dev

获取成功登录并使用节点 js 重定向

来自分类Dev

节点js使用中间件重定向的重定向过多

来自分类Dev

使用Express的Node.js:如何重定向POST请求

来自分类Dev

addChild之后节点的位置

来自分类Dev

使用modjk将特定请求重定向到集群中的节点

来自分类Dev

使用modjk将特定请求重定向到集群中的节点

来自分类Dev

WordPress的获取请求重定向

来自分类Dev

根据内核请求重定向

来自分类Dev

Grails-重定向请求

来自分类Dev

使用POST请求重定向

来自分类Dev

Apache重定向URI请求

来自分类Dev

NodeJS HTTP重定向请求

来自分类Dev

JS重定向问题

来自分类Dev

如何向go.js节点添加属性和重定向

来自分类Dev

具有单个节点文件的纯node.js / expressjs http重定向

来自分类Dev

如何从angularjs访问节点js post方法以重定向到另一个页面?

来自分类Dev

节点重定向到重复URL

来自分类Dev

节点/ JavaScript重定向不起作用?

来自分类Dev

将MySQL请求从旧服务器重定向到新服务器

来自分类Dev

node.js / express发出发布请求,而无需从当前页面重定向

来自分类Dev

如何重定向POST请求并传递Sails.js中的发布数据

来自分类Dev

重定向到hwioauthbundle中的“请求”页面

来自分类Dev

如何在grails中重定向请求