javascript - 使用node.js和express处理POST请求

标签 javascript http node.js post express

我是学习 AJAX 的新手,也是 Web 开发的新手,我在让本地服务器和远程服务器处理发布请求时遇到问题。我正在使用node.js 和express 模块。

这是我的服务器的代码:

var express = require('express');

//start server
var app = express.createServer();

//handle requests
app.post('/hello', function(req, res){
    res.send("hello");
});

app.listen(8888);

非常基本,我知道。为了测试这一点,我通过 Chrome 中的控制台手动创建一个 XMLHttpRequest(我已禁用跨源策略以在本地计算机上进行测试):

var xhr = new XMLHttpRequest();
xhr.open('POST', 'localhost:8888/hello', true);
xhr.send('name=me'); //body of request is irrelevant at this point

当我将请求发送到本地计算机时,它立即返回并表示失败。当我将请求发送到远程服务器(其中 localhost 被我的服务器的 IP 替换)时,我的控制台中没有收到错误,但是当我检查 xhr 对象的状态时失败。

我不知道问题是否出在我的服务器编写方式上,或者我向服务器发送请求的方式上。但是,我一直在查看像上面那样显示快速处理 POST 请求的教程和示例,以及像上面那样显示发送 POST 请求的其他教程。

发送和处理 GET 请求似乎工作正常。我一定是错过了什么。

谢谢,夏恩。

最佳答案

发出 POST 时,您需要在 URL 中包含 HTTP:

xhr.open('POST', 'http://localhost:8888/hello', true);

关于javascript - 使用node.js和express处理POST请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12080260/

相关文章:

node.js - Jade 中的多个逻辑 OR 运算符

javascript - 我可以在 Node JS 后端代码中构建吗?如果是的话,如何使用 npm 构建 Node js?

javascript - Hello World - Backbone + Firebase + Backfire

php - Laravel 5 Force 下载 pdf 文件

javascript - 使用 angular $http.get 从服务器下载文件

c++ - 将我简单的 winsock 服务器/客户端应用程序转变为简单的网络服务器

javascript - 在 Async/Await 中包装 FTP 请求

javascript - document.getElementByID 在 IE 8 中不起作用

javascript - 使用 Karma 和 Jasmine 测试订阅中的 IF

javascript - jade 使用 javascript 变量(mongo 模型)