javascript - 那么关于在node.js中请求

标签 javascript node.js

好的,看看这段代码..

var http = require('http');

var handleRequest = function (request, response){
    response.writeHead(200,{"context-type":"text/plain"});
    response.end('Welcome to the node club! :)');

}
//the createServer method... creates a server WOW!
http.createServer(handleRequest).listen(8888);

console.log('The servers are running and the bacon is stopping');

看起来很简单,当 Node 允许我响应时,handleRequest 函数将创建一个 writeHead 函数......对吗?如果是这样的话,我将能够在 end 方法中写出“欢迎来到 Node 俱乐部”。我对 Node 不理解的是请求变量或对象或其他什么。 在函数中我请求 Node 吗?或者 Node 正在请求我运行某个函数?我没有在函数中使用请求变量,所以如果我省略它,它仍然会运行吗?

最佳答案

http.createServer 的参数是在每个请求时调用的函数。函数is documented as

function (request, response) { } request is an instance of http.IncomingMessage and response is an instance of http.ServerResponse.

您在此功能中执行的操作取决于您;它可以是任何东西。

但是,几乎所有 Web 应用程序最终都会向客户端写入答案,这是通过 response 对象完成的。此外,由于仅提供一页的应用程序非常有限,因此大多数应用程序还希望从 HTTP 请求中获取信息,包括请求的路径(类似于 '/questions/37265770/so-about-requesting-in- node-js',在 request.path 中),HTTP POST parameters等等。

您的函数使用两个参数调用,第一个是请求对象,第二个是响应对象。没有涉及任何魔法 - 您似乎将魔法称为“Node ”,但这只是项目的名称。

关于javascript - 那么关于在node.js中请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37265770/

相关文章:

javascript - 根据另一个 map 中的标记拖动更新 map 中心

javascript - 实例创建(JS)

javascript - react typescript 打字不起作用

javascript - 如何使用 Node JS 打印整个 mongoDB 集合

javascript - 使用指针将 C++ 转换为 JavaScript( Node )*

node.js - package.json 中的多个命令

javascript - 数据表重新排序保存到数据库

javascript - JS 应该在页面重新加载后保持其工作状态

javascript - 帮助在jade express中显示变量

node.js - 减少无限循环中 phantomjs/casperjs/spooky js 的内存使用