通过XMLHttpRequest传递变量

时间:2014-10-29 13:25:38

标签: javascript node.js xml-parsing

如何使用GET将变量传递到服务器端? 我该如何使用它?

我想发送params" bar"到服务器端并在函数中使用它但我不知道如何在服务器端访问它,任何指针?

的javascript

function update(){
     var params = "bar";
     var req = new XMLHttpRequest();
     req.open("GET","/results"+"?"+params);
     req.onreadystatechange = function(foo){
        if(req.readyState == 4){
                document.getElementById("content").innerHTML = req.responseText;
           }
      }
    req.send(null);
   }

server node.js

app.get("/results",function(req,res){
    console.log(req + req.params +req.body)
    getResults(function(results, req){       
        res.writeHead(200,"OK",{"Content-Type":"text/html"});
       res.end(results);
    });
});

控制台

[object Object][object Object][object Object]

1 个答案:

答案 0 :(得分:0)

首先,为什么要尝试将空参数“bar”传递给服务器? 我认为酒吧应该带有更有意义的价值。

因此,在客户端代码中,请尝试:

function update () {
    var params = "bar=foo";
    var req = new XMLHttpRequest();

    req.open("GET","/results?"+params);
    req.onreadystatechange = function (foo) {
        if (req.readyState == 4){
                document.getElementById("content").innerHTML = req.responseText;
        }
    }
    req.send(null);
}

在你的服务器端,假设你正在使用express.js(看起来如此),你可以简单地说:

app.get("/results", function (req, res) {
    console.log(req.param("bar"));

    res.send(req.param("bar"));
});

现在你将在你的node.js控制台中以及HTML页面的“内容”项目中获得“foo”。

尝试在官方指南和API文档http://expressjs.com/4x/api.html中阅读有关express.js的更多信息,我非常确定您将解决在旅程开始时会遇到的这些问题。

希望它有所帮助。