t_tangyawei 2017-05-20 05:21 采纳率: 0%
浏览 2647

哪位学长能根据以下解惑一下,ajax以POST方式请求,页面怎么接收nodejs服务器返回的数据?

服务端代码是:

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

http.createServer(function(req, res) {

    var postData = "";

    req.on("data", function (data) {
        postData += data;
    });

    req.on("end", function () {
        post = querystring.parse(postData);
       res.write(post);
             res.end();
    });

}).listen(3000, function() {
    console.log("Starting to listen on port 3000");
})

ajax的代码是:


 $.ajax({
                type: "POST",
                url: "http://localhost:3000",
                dataType:"jsonp",
                data: {
                    user: $username,
                    pwd: $password
                },
                success: function(data) {
                    var data=JSON.parse(data);
                    console.log(data);
                },
                error: function() {
                    alert("出错啦!");
                }
            })

ajax发送的是两个表单数据,打开localhost:3000/index.html是空白的,输入框都没有,控制台也没有,也不报错。。。

  • 写回答

1条回答 默认 最新

  • 当作看不见 2017-05-20 07:48
    关注

    你的index.html 页面呢??
    在服务器,你没有处理请求 ,
    你连请求的url 都没有解析,
    localhost:3000/index.html 是一个get 请求 ,你就应该解析一下url判断是这个路径的时候,把一个文件fs.readFile(path),获取到数据写入到res.write 里面
    记得要有res.end(),不然请求会挂起,页面就是一直转圈圈.
    post请求同理,如果不是通过服务器返回的页面,post 请求还有一个跨域问题,
    这个问题太多了.
    直接照下面的敲吧,如果不懂服务器的基础知识,我只能表示很绝望
    http://www.runoob.com/nodejs/node-js-get-post.html

    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题