用Node.js实现一个HTTP服务器程序(文件服务器)

news/2024/12/5 12:00:05/

http

Node.js开发的目的就是为了用JavaScript编写Web服务器程序。因为JavaScript实际上已经统治了浏览器端的脚本,其优势就是有世界上数量最多的前端开发人员。如果已经掌握了JavaScript前端开发,再学习一下如何将JavaScript应用在后端开发,就是名副其实的全栈了。

HTTP协议

要理解Web服务器程序的工作原理,首先,我们要对HTTP协议有基本的了解。如果你对HTTP协议不太熟悉,先看一看HTTP协议简介。

HTTP服务器

要开发HTTP服务器程序,从头处理TCP连接,解析HTTP是不现实的。这些工作实际上已经由Node.js自带的http模块完成了。应用程序并不直接和HTTP协议打交道,而是操作http模块提供的request和response对象。

request对象封装了HTTP请求,我们调用request对象的属性和方法就可以拿到所有HTTP请求的信息;

response对象封装了HTTP响应,我们操作response对象的方法,就可以把HTTP响应返回给浏览器。

用Node.js实现一个HTTP服务器程序非常简单。我们来实现一个最简单的Web程序hello.js,它对于所有请求,都返回Hello world!:

'use strict';// 导入http模块:
var http = require('http');// 创建http server,并传入回调函数:
var server = http.createServer(function (request, response) {// 回调函数接收request和respons

http://www.ppmy.cn/news/35317.html

相关文章

面试官:vue2和vue3的区别有哪些

目录 多根节点,fragment(碎片) Composition API reactive 函数是用来创建响应式对象 Ref toRef toRefs 去除了管道 v-model的prop 和 event 默认名称会更改 vue2写法 Vue 3写法 vue3组件需要使用v-model时的写法 其他语法 1. 创…

路径规划与越障逻辑

有幸在国内某家用型机器人_扫地机器人公司学习该内容,感觉作为科普还是有些值得的; 1、机器人环境感知与路径规划 机器人三大关键系统: 感知识别 我在哪里 我附近有什么 决策规划 我要做什么 控制执行 我该怎么做 2、扫地机越障与脱困逻辑 3…

【Python入门第三十五天】Python丨文件打开

在服务器上打开文件 假设我们有以下文件,位于与 Python 相同的文件夹中。 demofile.txt Hello! Welcome to demofile.txt This file is for testing purposes. Good Luck!如需打开文件,请使用内建的 open() 函数。 open() 函数返回文件对象&#xff…

【树与二叉树】树与二叉树的概念及结构--详解介绍

​ ​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:数据结构 🎯长路漫漫浩浩,万事皆有期待 文章目录1.树概念及结构1.1 树…

正式环境关闭swagger

直接上步骤,如图:1,启动判断写在相应的环境配置文件中,根据条件判断是否启动 swagger :添加配置项:swagger.is.enable配置文件中添加:#是否激活 swagger true or falseswagger.is.enabletrue2&a…

【Linux系统】第八篇:Linux操作系统中的进程概念(冯诺依曼+操作系统+进程状态+进程优先级)

文章目录一、冯诺依曼体系结构(硬件方面)二、操作系统(软件方面)1、概念2、设计操作系统的目的3、定位4、如何理解 "管理"os完整体系构造理解 "管理"5、系统调用和库函数概念三、进程管理1、进程的概念2、描述…

学习系统编程No.10【文件描述符】

引言: 北京时间:2023/3/25,昨天摆烂一天,今天再次坐牢7小时,难受尽在不言中,并且对于笔试题,还是非常的困难,可能是我做题不够多,也可能是没有好好的总结之前做过的一些…

一篇文章教你快速弄懂 web自动化测试中的三种等待方式

目录 前言 1、强制等待 2、隐式等待 3、显式等待 总结: 前言 现在的网页很多都是动态加载的,如果页面的内容发生了改变,就需要时间来渲染。在咱们做web自动化测试的时候,由于代码是自动执行的,代码在执行的时候&a…