Node第二天
一、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第二天的更多相关文章
- Cocos2d-X3.0 刨根问底(五)----- Node类及显示对象列表源码分析
上一章 我们分析了Cocos2d-x的内存管理,主要解剖了 Ref.PoolManager.AutoreleasePool这三个类,了解了对象是如何自动释放的机制.之前有一个类 Node经常出现在各种 ...
- node学习 process笔记
如果你是node大神好了可以关闭此页面了因为接下来游览会白白浪费你许多时间,最近一直学习node.js今晚看到 alsotang 在 github上的node教程 https://github.com ...
- node.js核心模块
全局对象 global 是全局变量的宿主 全局变量 在最外层定义的 全局对象的属性 隐士定义的变量(未定义直接赋值的变量) 当定义一个全局变量时 这个变量同时也会成为全局对象的属性 反之亦然 注意: ...
- 10.Node.js核心模块
1.全局对象2.常用工具3.事件机制4.文件系统访问5.HTTP服务与客户端 一.全局对象(Global Object), 与window对象一样 process ==> 全局变量, 描述当前N ...
- JavaScript数据结构——树
树:非顺序数据结构,对于存储需要快速查找的数据非常有用. 二叉树:二叉树中的节点最多只能有两个子节点(左侧子节点和右侧子节点).这些定义有助于我们写出更高效的向/从树中插入.查找和删除节点的算法. 二 ...
- Nodejs开发指南-笔记
第三章 异步式I/O与事件编程3.1 npm install -g supervisor supervisor app.js 当后台修改代码后,服务器自动重启,生效修改的代码,不用手动停止/启动3.2 ...
- Nodejs核心模块
(1)全局对象 在浏览器JS中,通常window是全局对象,而nodejs中的全局对象是global,所有全局变量都是global对象的属性. 在nodejs中能够直接访问到的对象通常都是global ...
- JavaScript树(二) 二叉树搜索
TypeScript方式实现源码 // 二叉树与二叉树搜索 class Node { key; left; right; constructor(key) { this.key = key; this ...
- js数据结构与算法——二叉树
function BinaryTree(){ var Node = function(key){ this.key = key; //值 this.left = null; //左箭头 this.ri ...
随机推荐
- sysbench压力测试总结
sysbench压力测试工具简介sysbench是一个开源的.模块化的.跨平台的多线程性能测试工具,可以用来进行CPU.内存.磁盘I/O.线程.数据库的性能测试.目前支持的数据库有MySQL.Orac ...
- [Leetcode]006. ZigZag Conversion
public class Solution { public String convert(String s, int nRows) { if (s == null || s.isEmpty() || ...
- BZOJ 4892 [Tjoi2017]dna 哈希+二分
自己简直是傻死了...对于位置想错了... 二分出来的是LCP长度$+1$,即每一次二分出来的最后一个点都是失配的,而就算失配也会跳过这个点:所以当$k<=3$且模式串$s2$的指针$>l ...
- CF D. Recovering BST (区间DP)
题意:给你n个节点,每个节点有一个权值,两个点可以连边当且仅当这两个点的gcd>1,问你这n个点能否构成一个二叉搜索树(每个节点最多有两个儿子,且左儿子小于右儿子),输入为递增顺序. 分析: 若 ...
- 华东交通大学2017年ACM“双基”程序设计竞赛 1010
Problem Description 定义操作:将数 n 变为 f(n) = floor(sqrt(n)).即对一个数开平方后,再向下取整.如对 2 进行一次操作,开平方再向下取整, 1.41421 ...
- python大战机器学习——集成学习
集成学习是通过构建并结合多个学习器来完成学习任务.其工作流程为: 1)先产生一组“个体学习器”.在分类问题中,个体学习器也称为基类分类器 2)再使用某种策略将它们结合起来. 通常使用一种或者多种已有的 ...
- 10-----关于DOM的时间操作
一.JavaScript的组成 JavaScript基础分为三个部分: ECMAScript:JavaScript的语法标准.包括变量.表达式.运算符.函数.if语句.for语句等. DOM:文档对象 ...
- ASP.NET相关
1.委托:把一个方法当作参数传到另一个方法中 扩展方法:1.静态类 2.静态方法 3.this关键字 using System; using System.Collections.Generic; u ...
- [LeetCode]7. Reverse Integer整数反转
Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 Output: 321 Examp ...
- vue地址插件多级联动自适应 + github地址
https://github.com/cqzyl/vue-manyAddress