如何在cloud9中向server.js发送post请求

How to send post request to server.js in cloud9

本文关键字:js 发送 post 请求 server 中向 cloud9      更新时间:2023-09-26

嗨,我正在学习cloud9上的平均堆栈。

我已经到了尝试将变量发送到node.js服务器的地步,但我不确定我的服务器是否正在接收它。我的帖子请求代码有任何明显的错误吗?

app.js(前端角度)

console.log('begin');
    var http = new XMLHttpRequest();
    var params = "text=stuff";
    http.open("POST", "https://new-backup.splacorn.c9.io/myApp/server/server.js/", true);
    http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    http.onreadystatechange = function() {
        console.log('onreadystatechange');
        if (http.readyState == 4 && http.status == 200) {
            alert(http.responseText);
        }
        else {
        console.log('readyState=' + http.readyState + ', status: ' + http.status);
    }
}
console.log('sending...')
http.send(params);
console.log('end');

这是我得到的控制台响应:

begin
sending...
end
POST https://new-backup.splacorn.c9.io/myApp/server/server.js/ net::ERR_INSECURE_RESPONSE$scope.addNewUser
onreadystatechange
readyState=4, status: 0

我相信我得到的错误归因于这条线:

http.open("POST", "https://new-backup.splacorn.c9.io/myApp/server/server.js/", true);

一旦http.send(params);调用它。

这是server.js文件(后端)

var express = require('express');
var fs = require('fs');
var app = express();
var bodyParser = require('body-parser')
app.use(express.bodyParser());
app.post('/', function(req, res){
    console.log('POST /');
    res.writeHead(200);
    res.end('this is from the server');
});
var port = 3000;
app.listen(port);
console.log('Listening at http://localhost:' + port);

有人知道我为什么会出错吗?我有一部分认为我弄错了cloud 9服务器的url,但我不确定。。。如果有人能帮我弄清楚这一点,那将是惊人的!

我想改用socket.io。下面是一个如何做到这一点的小例子:-客户端代码:

var io = io("http://localhost:1337");
io.emit('give me some data',{test:'testing socket.io'});
io.on('got the data',function(data){
    console.log(data.test);
});

服务器端代码:

var app = require('express').createServer();
var io = require('socket.io')(app);
io.on('connection',function(socket){
     socket.on('give me some data',function(data){
               socket.emit('got the data',data);
      }
app.listen(1337);

你可以在这里找到socket.io它们既有客户端代码,也有服务器端代码。希望你明白我的意思。我在打电话,所以打字不多。此外,socket.io还提供了客户端和服务器之间的实时连接:)