请求网址过程:

  1.用户通过浏览器发送一个http的请求到指定的主机

  2.服务器接收到该请求,对该请求进行分析和处理

  3.服务器处理完成以后,返回对应的数据到用户机器

  4.浏览器接收服务器返回的数据,并根据接收到的进行分析和处理

//搭建一个服务器http,用于处理用户发送的http请求
//需要使用node提供一个模块 http //加载一个http模块
var http=require('http');
var url=require('url');
//通过http模块下的createServer创建并返回一个web服务器对象
var server=http.createServer();//()中为监听到客户端连接的回调函数
server.listen(8080,'localhost');//监听客户端连接请求,只有当调用了listen方法以后,服务器才开始工作
//server.listen(port,[hostname],[backlog],[callback]);
//-port:监听端口
//hostname:主机名(IP/域名)
//backlog:连接等待队列的最大长度
//callback:调用listen方法并成功开启监听以后会触发一个listening事件,callback将作为该事件的执行函数。
//server.listen();不带任何参数,则是系统默认自动分配的。
//error事件:当服务器开启失败的时候触发的事件
// -参数err:具体的错误对象
//request事件:当有客户端发送请求道该主机和端口的请求的时候触发
//-参数request:http.IncomingMessage的一个实例,通过它,我们可以获取到这次请求的一些信息,比如头信息,数据等
//-httpVersion:使用http协议的版本
//-headers:请求头信息中的数据
//-url:请求地址
//-method:请求方式
//-参数response:http.ServerResponse的一个实例,通过它,我们可以向该次请求的客户端输出返回响应
//-write(chunk,[encoding]):发送一个数据块到响应正文中
//-end([chunk],[encoding]):当所有的正文开头和头信息发送完成以后调用该方法告诉服务器数据已经全部发送完成了,这个方法在每次完成信息发送以后必须调用,并且是最后调用
//-statusCode:该属性用来设置返回状态码
//-setHeader(name,value):设置返回头信息
//writeHead(statusCode,[reasonPhrase],[headers])这个方法只能在当前请求中使用一次,而且必须在response.end()之前调用

node.js----服务器http的更多相关文章

  1. 使用免费 mongodb数据库 + 免费node.js服务器搭建小程序接口

    由于微信的小程序只支持不带端口的域名接口,不支持IP地址和接口,所以我们需要映射到80端口并绑定备案过的域名才能被微信小程序访问到.简单点就是接口需要 https 协议才行,找了许久的免费的数据库与n ...

  2. 搭建一个简单的node.js服务器

    第一步:安装node.js.可以去官网:https://nodejs.org/en/进行下载. 查看是否成功,只需在控制台输入 node -v.出现版本号的话,就证明成功了. 第二步:编写node.j ...

  3. 本地Vue项目跨域请求本地Node.js服务器的配置方法

    前言:跨域请求是在本地开发时经常遇到的需求,也很简单,只是几句代码配置一下的问题.我初次配置跨域请求时由于官方的说明太简洁,找到的教程又落伍,调试了一番并没有解决问题,到最后解决问题,已花费了很多时间 ...

  4. 建立一个node.js服务器(使用express搭建第一个Web环境)

    一.官网下载node.js 下载地址:https://nodejs.org/en/download/ 根据向导,下一步安装就可以了! 二.使用express搭建Web环境 express是一个开源的n ...

  5. 在腾讯云(windows)上搭建node.js服务器

    1:安装Node.js 使用MSI文件,并按照提示安装node.js,默认情况下,安装程序将 Node.js 发行到 C:\Program Files\nodejs. 但这里我们需要修改安装路径到:D ...

  6. 搭建基于hyperledger fabric的联盟社区(六) --搭建node.js服务器

    接下来我要做的是用fabric sdk来做出应用程序,代替CLI与整个区块链网络交互.并且实现一个http API,向社区提供一个简单的接口,使社区轻松的与区块链交互. 官方虽然提供了Node.JS, ...

  7. 在云服务器上部署node.js服务器

    本文档介绍腾讯云·万象优图服务端nodejs的部署和集成,搭建一个nodejs+nginx为基础,对web端或者移动端提供http签名接口服务的例子程序.注意:本文档只是简单的示例,展示了服务端为终端 ...

  8. node.js 服务器

    http-server 是一个简单的零配置命令行HTTP服务器, 基于 nodeJs. 如果你不想重复的写 nodeJs 的 web-server.js, 则可以使用这个. 安装 (全局安装加 -g) ...

  9. node.js服务器核心http和文件读写

    使用htpp给客服端的数据,把数据交给浏览器渲染.利用 http创建服务器,如客户端请求为:127.0.0.1:3000或127.0.0.1:3000/xxx.html时 ,判断www文件夹中,文件  ...

  10. Node.js服务器创建和使用

    1.使用zlib模块对服务器端响应压缩 //1.1引入zlib模块 const zlib=require('zlib'); //1.2 设置内容的压缩形式 'Content-Encoding': 'g ...

随机推荐

  1. Java基础 使用Properties类

  2. NET4.5中的Task.Run及Task.Delay方法

  3. HDU 1875(最小生成树)

    #include <iostream> #include <algorithm> #include <cstdio> #include <cmath> ...

  4. ZOJ3329(数学推导+期望递推)

    要点: 1.期望的套路,要求n以上的期望,则设dp[i]为i分距离终点的期望步数,则终点dp值为0,答案是dp[0]. 2.此题主要在于数学推导,一方面是要写出dp[i] = 什么,虽然一大串但是思维 ...

  5. Redis基础理论

    一.概述 二.数据类型 STRING LIST SET HASH ZSET 三.数据结构 字典 跳跃表 四.使用场景 计数器 缓存 查找表 消息队列 会话缓存 分布式锁实现 其它 五.Redis 与 ...

  6. python_22(Form-CRM)

    第1章 CRM 1.1 建项目 1.2 settings1.3 规范url 1.4 公共的后台模板1.5 创建部门表 1.6 建库移库 1.7 母版继承 1.7.1 导入static 1.7.2 导入 ...

  7. datetimepicker 插件位置问题解决经验

    使用dadetimepicker进行时间选择是个很不错的选择,但是美中不足的是该插件在chrome中显示弹框的时候有时会出现位置错位的现象,而在IE中则没有这种现象,视图如图1 图1 查阅了网上的资料 ...

  8. sql server 时间查询

    select CONVERT(varchar, getdate(),8 )   --获取当前时间时分14:13:59 select CONVERT(varchar, getdate(),23 )  - ...

  9. js原生子级元素阻止父级元素冒泡事件

    <html> <head> <style type="text/css"> #hide{ width:75%;height:80px;backg ...

  10. jquery中each的3种遍历方法

    1.选择器+遍历 $('div').each(function (i){ i就是索引值 this 表示获取遍历每一个dom对象 }); 2.选择器+遍历 $('div').each(function  ...