一、http模块:

步骤一:创建http服务器 const https = require('https');

步骤二:const fs = require('fs');

步骤三:创建请求=》

let request =https.request({

hostname:''

})

注:

const http = require('https');

const fs = require('fs');

const url = require('url');

//请求的信息

let urlObj = {

pathname:'/v2/movie/top250',

query:{

start:1,

count:10

}

}

//创建请求

const  request = http.request({

port:443,

method:"GET",

hostname:'api.douban.com',

path:url.format(urlObj)//组装请求路径和请求参数

},(response)=>{

//接收请求成功的回调

//response:后台相应应该请求的相应对象

//建立连接,并没有开始接受数据

console.log('建立连接,得到响应');

//开始接收数据

let result ='';

response.on('data',(buffer)=>{

console.log('接收到了数据);

result += buffer;

})

response.on('end',()=>{

console.log('接收完成,断开连接');

fs.writeFilleSync('./data.json',result);

})

})

request.on('error',(error)=>{

console.log('请求出错了') ;

console.log(error);

})

request.end();

二、创建服务器:

const http = require('http');

const fs = require('fs');

//一个完整的http事物过程:

1.客户端(网页,应用,ios,andtoid...)发送请求给服务器

2.服务器接受请求

3.对请求进行分析处理

4. 响应客户端

5.客户端得到响应,处理数据

步骤一:创建服务器

const server = http.createServer(()=>{

console.log('启动服务器成功')

})

//接受请求

server.on('request',(request,response)=>{

//request客户端的请求对象

//response服务器将要访问的数据返回给客户端

//对请求进行分析处理;

//let urlObj = request.url;

//响应客户端

response.write('')

response.end('test');

})

步骤二:启动监听,服务器开始工作了

server.listen(8080);

Node第二天的更多相关文章

  1. Cocos2d-X3.0 刨根问底(五)----- Node类及显示对象列表源码分析

    上一章 我们分析了Cocos2d-x的内存管理,主要解剖了 Ref.PoolManager.AutoreleasePool这三个类,了解了对象是如何自动释放的机制.之前有一个类 Node经常出现在各种 ...

  2. node学习 process笔记

    如果你是node大神好了可以关闭此页面了因为接下来游览会白白浪费你许多时间,最近一直学习node.js今晚看到 alsotang 在 github上的node教程 https://github.com ...

  3. node.js核心模块

    全局对象 global 是全局变量的宿主 全局变量 在最外层定义的 全局对象的属性 隐士定义的变量(未定义直接赋值的变量) 当定义一个全局变量时 这个变量同时也会成为全局对象的属性 反之亦然 注意: ...

  4. 10.Node.js核心模块

    1.全局对象2.常用工具3.事件机制4.文件系统访问5.HTTP服务与客户端 一.全局对象(Global Object), 与window对象一样 process ==> 全局变量, 描述当前N ...

  5. JavaScript数据结构——树

    树:非顺序数据结构,对于存储需要快速查找的数据非常有用. 二叉树:二叉树中的节点最多只能有两个子节点(左侧子节点和右侧子节点).这些定义有助于我们写出更高效的向/从树中插入.查找和删除节点的算法. 二 ...

  6. Nodejs开发指南-笔记

    第三章 异步式I/O与事件编程3.1 npm install -g supervisor supervisor app.js 当后台修改代码后,服务器自动重启,生效修改的代码,不用手动停止/启动3.2 ...

  7. Nodejs核心模块

    (1)全局对象 在浏览器JS中,通常window是全局对象,而nodejs中的全局对象是global,所有全局变量都是global对象的属性. 在nodejs中能够直接访问到的对象通常都是global ...

  8. JavaScript树(二) 二叉树搜索

    TypeScript方式实现源码 // 二叉树与二叉树搜索 class Node { key; left; right; constructor(key) { this.key = key; this ...

  9. js数据结构与算法——二叉树

    function BinaryTree(){ var Node = function(key){ this.key = key; //值 this.left = null; //左箭头 this.ri ...

随机推荐

  1. linux下find查找与批量替换文件中指定内容

    经常在部署tomcat时需要替换配置文件中的ip,find命令批量替换还是很方便的 查找需要替换的ip,看看哪些文件有配置这个ip,执行下面命令: find ./ -type f -regex &qu ...

  2. 牛客假日团队赛1 D.Promotion Counting

    链接: https://ac.nowcoder.com/acm/contest/918/D 题意: Bessie the cow is helping Farmer John run the USA ...

  3. Codeforces Round #363 (Div. 2) B

    Description You are given a description of a depot. It is a rectangular checkered field of n × m siz ...

  4. 【ACM】拦截导弹 - 0-1背包问题

    拦截导弹 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 某国为了防御敌国的导弹袭击,发展中一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到 ...

  5. 【ACM】大数阶乘 - Java BigInteger实现

    大数阶乘 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 我们都知道如何计算一个数的阶乘,可是,如果这个数很大呢,我们该如何去计算它并输出它?   输入 输入一个整数 ...

  6. jdbc 开启事务

    package com.itheima.tx; import java.sql.Connection; import java.sql.PreparedStatement; import java.s ...

  7. Zookeeper启动失败:java.net.BindException: Address already in use

    错误日志如下: [hadoop@master zookeeper-3.4.5-cdh5.10.0]$ cat zookeeper.out 2018-05-15 01:29:21,036 [myid:] ...

  8. HTML常用标签参考学习

    1.跑马灯标签 功能<marquee>...</marquee> 普通卷动<marquee behavior=slide>...</marquee> 滑 ...

  9. jQuery 结构的实现思路

    前提: 使用 JS 创建对象的最优办法,是 原型模式.   step1: 原型模式的基础使用方式     function fn(){}     fn.prototype = {}       var ...

  10. C 碎片九 预处理&位运算&文件操作

    一.预处理 预处理语句:#开头的语句,在预处理阶段处理预处理语句.包括宏定义.文件包含处理.条件编译 1, 宏定义 1. 不带参数宏定义:#define 标识符  字符串 #define PI 3.1 ...