| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> class04:http模块 -> 正文阅读 |
|
[网络协议]class04:http模块 |
目录一、http模块使用node 创建服务应用使得前后端数据交互,从而在访问地址的时候返回页面或者数据。 http模块是内置模块,用来创建node应用程序,后面会使用express,koa等第三方库创建,较为简便。 1. 创建node应用
打印输出:
创建node应用:
启动node应用:
port: 端口号 callback:回调函数 端口号是 0 - 65536 之间的一个数组成,端口是node应用运行的一个地址; 端口号已经被调用,不能创建相同的端口地址,两个相同的地址会报错。 例:
2. 请求体与访问体网页通过本地端口localhost访问后端数据,网页地址栏相等于在发送get请求 : request 请求体 => 前端发送数据给后端的一个整体信息 response 响应体 => 后端给前端发送信息的一个整体 例:
浏览器访问结果: 后端打印输出: 3. 返回页面引入http模块:
创建node应用:
开启服务端口:
假如要访问同目录下的web文件夹中的index.html文件,则应在第二步中将后端数据index.html页面发送给前端,但打开web文件访问index.html文件需要先引入fs模块。
4. 返回css样式http仅支持在HTML内添加样式,若读取css文件只能读取文本,比较麻烦。 4.1 在html内添加css样式,可正常显示
4.2 使用css样式文件,不能正常显示
通过打印请求地址,可发现每次访问页面时,后端发起了三次请求:
这三次请求分别是:/ 、/index.css、/favicon.ico,其中/ 表示3000端口。 4.3 对css文件发起请求访问,只能显示文本
注意:这种访问并不能每次都显示该css文本,而是有时显示html文本,有时显示css文本,有时显示被css样式渲染的html文本;即访问的文件已经混乱,各个文件在不同时间互相覆盖。 4.4 使用if-else解决混乱
二、后端接收前端的数据1. axios请求的get方式Axios 是一个基于 promise 网络请求库,作用于 前端使用axios发起请求:
上一行的代码为axios访问网络配置的固定路径; app.html文件中配置了get的请求方式,当请求地址为http://localhost:3000/request_me时可以正确发起该axios的get请求。请求得到返回的数据内容由后端决定。
后端通过http接收前端发起的请求,如果请求地址和端口正确则返回66666666666666: 前端发起请求之后还要接收后端返回的数据,通过**.then**的方式接收:
打印输出res: 跨域问题: 在后端接收请求之前设置跨域,可以使任何人都能访问:
2. axios请求的post方式post在前端发起请求需要传递数据: 当请求地址为http://localhost:8080/request_her可正确发起post请求,携带的数据有name和age:
post方式在后端获取数据需要通过on事件的方式:
后端通过http接收前端发起的请求,如果请求地址和端口正确则返回55555555555: 三、URL模块引入:
例:
|
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 22:25:09- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |