Node.js Web 模块

什么是 Web 服务器?

Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,Web服务器的基本功能就是提供Web信息浏览服务。它只需支持HTTP协议、HTML文档格式及URL,与客户端的网络浏览器配合。

大多数 web 服务器都支持服务端的脚本语言(php、python、ruby)等,并通过脚本语言从数据库获取数据,将结果返回给客户端浏览器。

目前最主流的三个Web服务器是Apache、Nginx、IIS。

Web 应用架构

Client - 客户端,一般指浏览器,浏览器可以通过 HTTP 协议向服务器请求数据。

Server - 服务端,一般指 Web 服务器,可以接收客户端请求,并向客户端发送响应数据。

Business - 业务层, 通过 Web 服务器处理应用程序,如与数据库交互,逻辑运算,调用外部程序等。

Data - 数据层,一般由数据库组成。

使用 Node 创建 Web 服务器

Node.js 提供了 http 模块,http 模块主要用于搭建 HTTP 服务端和客户端,使用 HTTP 服务器或客户端功能必须调用 http 模块,代码如下:

var http = require('http');

以下是演示一个最基本的 HTTP 服务器架构(使用 8080 端口),创建 server.js 文件,代码如下所示:

实例

varhttp=require('http');varfs=require('fs');varurl=require('url');//创建服务器http.createServer(function(request,response){//解析请求,包括文件名varpathname=url.parse(request.url).pathname;//输出请求的文件名console.log("Request for"+pathname+"received.");//从文件系统中读取请求的文件内容fs.readFile(pathname.substr(1),function(err,data){if(err){console.log(err);//HTTP 状态码: 404 : NOT FOUND//Content Type: text/htmlresponse.writeHead(404,{'Content-Type':'text/html'});}else{//HTTP 状态码: 200 : OK//Content Type: text/htmlresponse.writeHead(200,{'Content-Type':'text/html'});//响应文件内容response.write(data.toString());}//发送响应数据response.end();});}).listen(8080);//控制台会输出以下信息console.log('Server running at http://127.0.0.1:8080/');

接下来我们在该目录下创建一个 index.html 文件,代码如下:

index.html 文件

菜鸟教程(runoob.com)

我的第一个标题

我的第一个段落。

执行 server.js 文件:

$ node server.js

Server running at http://127.0.0.1:8080/

接着我们在浏览器中打开地址:http://127.0.0.1:8080/index.html,显示如下图所示:

执行 server.js 的控制台输出信息如下:

Server running at http://127.0.0.1:8080/

Request for /index.html received. # 客户端请求信息

使用 Node 创建 Web 客户端

Node 创建 Web 客户端需要引入 http 模块,创建 client.js 文件,代码如下所示:

实例

varhttp=require('http');//用于请求的选项varoptions={host:'localhost',port:'8080',path:'/index.html'};//处理响应的回调函数varcallback=function(response){//不断更新数据varbody='';response.on('data',function(data){body+=data;});response.on('end',function(){//数据接收完成console.log(body);});}//向服务端发送请求varreq=http.request(options,callback);req.end();

新开一个终端,执行 client.js 文件,输出结果如下:

$ node client.js

菜鸟教程(runoob.com)

我的第一个标题

我的第一个段落。

执行 server.js 的控制台输出信息如下:

Server running at http://127.0.0.1:8080/

Request for /index.html received. # 客户端请求信息

node mysql菜鸟教程_Node.js Web 模块相关推荐

  1. Node.js Web 模块

    Node.js Web 模块 什么是 Web 服务器? Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,Web服务器的基本功能就是提供Web信息浏览服务.它只需支持HTTP协议. ...

  2. Node.js Web 模块(客户端 服务端实例)

    Node.js Web 模块 Web 应用架构 Client - 客户端,一般指浏览器,浏览器可以通过 HTTP 协议向服务器请求数据. Server - 服务端,一般指 Web 服务器,可以接收客户 ...

  3. 40.Node.js Web 模块

    转自:http://www.runoob.com/nodejs/nodejs-module-system.html 什么是 Web 服务器? Web服务器一般指网站服务器,是指驻留于因特网上某种类型计 ...

  4. SQL(MySql)菜鸟教程知识

    增 insert into insert into websites (name, url, alexa, county) values ('百度', 'https://www.baidu.com/' ...

  5. node.js mysql 不退出_node.js,node-mysql_使用了node-mysql的代码无法自动停止,node.js,node-mysql - phpStudy...

    使用了node-mysql的代码无法自动停止 // db.js var mysql = require('mysql'); module.exports = function () { var poo ...

  6. nodejs mysql嵌套查询_node.js,_nodejs mysql查询内嵌套修改,node.js - phpStudy

    nodejs mysql查询内嵌套修改 http://www.cnblogs.com/kongxi... 我通过这个案例 把查询 内 再嵌套一个update为什么就报错了呢 应该怎么写 假如我先取出s ...

  7. node输出mysql的数据_node.js+async+mysql 查询数据输出问题,如何分别统计、提取每个sql语句的结果!!...

    展开全部 首先这是一个很简单的问e5a48de588b63231313335323631343130323136353331333335343366题,cnodejs这个论坛node大神算是最多的了, ...

  8. js修改mysql数据库数据_Node.js操作mysql数据库增删改查

    关于node.js操作mysql数据库的相关介绍请阅读全文吧.下文介绍的非常详细,具体内容如下所示: 安装mysql模块 npm install mysql 数据库准备 mysql server所在的 ...

  9. php获取mysql数据菜鸟_PHP 连接 MySQL | 菜鸟教程

    PHP 连接 MySQL PHP 5 及以上版本建议使用以下方式连接 MySQL : MySQLi extension ("i" 意为 improved) PDO (PHP Dat ...

  10. mysql菜鸟教程update_PHP MySQL Update

    PHP MySQL Update UPDATE 语句用于中修改数据库表中的数据. 更新数据库中的数据 UPDATE 语句用于更新数据库表中已存在的记录. 语法 UPDATE table_name SE ...

最新文章

  1. 如何对比_潭酒红潭酱酒对比红花郎怎么样口感如何
  2. numpy的通用函数:快速的元素级数组函数
  3. deeplabv2实现并训练自己的数据
  4. mysql存储过程局部变量使用_MySQL存储过程使用输出变量
  5. Linux系统的头文件和库文件搜索路径
  6. open3d读取npy点云文件
  7. 毕业论文 Word 排版技巧
  8. 大学计算机基础教程第11章计算机网络与应用总结
  9. 312. 戳气球(区间dp)
  10. 饥荒联机版Centos下自动更新教程
  11. 多元正态分布的性质和定理
  12. Android Studio使用真机(连接安卓手机驱动)调试教程
  13. 网络工程大一课程c语言,网络工程专业主要开哪些课程?
  14. sendmail安装使用
  15. 鸿蒙塔罗占卜 你是他的备胎吗,鸿蒙塔罗占卜:为什么你每段感情都不长久?...
  16. [解读] Difference-Seeking Generative Adversarial Network - Unseen Sample Generation
  17. PADS Layout添加工艺边和Mark的方法和步骤
  18. java 接口 抛出异常_Java接口抛出异常,但接口实现不抛出异常?
  19. 关于Xilinx下载器驱动安装及常见问题解决方法
  20. scrapy 使用浏览器的开发人员工具进行抓取

热门文章

  1. sql 语句循环方法的使用
  2. NetSarang旗下网络通讯系列产品v5版本更新合集丨附下载
  3. JavaScript 小白手册
  4. JAVA随机抽取一名幸运观众(手动输入观众)小实例
  5. 小米手机便签怎么批量导出到另一个手机
  6. IT基础架构现代化,未来企业的“标配”是什么?
  7. 用扫码枪收款钱到哪里_如何申请微信官方收款码(信用卡收款)
  8. 【高项】第6章 项目进度管理【知识点精华笔记】
  9. MapGIS矢量数据的误差校正
  10. python第四天 组合数据类型 文件与数据格式化