官术网_书友最值得收藏!

Making HTTP requests

It is often necessary for a network application to make external HTTP calls. HTTP servers are also often called upon to perform HTTP services for clients making requests. Node provides an easy interface for making external HTTP calls.

For example, the following code will fetch the HTML front page of www.example.org:

const http = require('http');
http.request({
host: 'www.example.org',
method: 'GET',
path: "/"
}, function(response) {
response.setEncoding("utf8");
response.on("readable", () => console.log(response.read()));
}).end();

As we can see, we are working with a Readable stream, which can be written to a file.

A popular Node module for managing HTTP requests is Mikeal Roger's request: https://github.com/request/request

Because it is common to use HTTP.request in order to GET external pages, Node offers a shortcut:

http.get("http://www.example.org/", response => {
console.log(`Status: ${response.statusCode}`);
}).on('error', err => {
console.log("Error: " + err.message);
});

Let's now look at some more advanced implementations of HTTP servers, where we perform general network services for clients.

主站蜘蛛池模板: 灵武市| 盖州市| 迭部县| 琼海市| 苏尼特左旗| 吴堡县| 太保市| 通化市| 建平县| 长岭县| 磐石市| 嘉荫县| 休宁县| 分宜县| 桐庐县| 迭部县| 沂南县| 平舆县| 永春县| 忻州市| 清苑县| 镇安县| 会昌县| 西贡区| 盐亭县| 横峰县| 包头市| 广宁县| 方正县| 南开区| 河北省| 宁陵县| 辛集市| 孝义市| 霍山县| 自贡市| 嘉义市| 金华市| 昭平县| 普兰县| 伊吾县|