Ajax 的初步实现(使用vscode+node.js+express框架)


Posted in Javascript onJune 18, 2021

需求: 点击按钮 向服务端发送一个请求 然后将服务端返回的响应体结果在一个div中呈现出来 同时页面不刷新

一、 服务端的前期准备

安装node.js https://nodejs.org/en/download/

检验是否安装成功 : 在命令行输入 node -v 按下enter 键之后出现 版本号就表明安装成功 (图如下)

Ajax 的初步实现(使用vscode+node.js+express框架)

使用 vscode安装express (前提是你已经成功安装了node.js)

在 vscode 里面新建一个文件夹 文件下面包含俩个文件 一个是你的前端页面代码:.html另一个是准备的服务端代码 这里暂且为 server.js在目录文件最外层 点击在集成终端中打开

Ajax 的初步实现(使用vscode+node.js+express框架)

输入 npm init 进行初始化 输入包名后一直按 Enter 就行

Ajax 的初步实现(使用vscode+node.js+express框架)

5. 继续输入 npm i express 安装express 框架

Ajax 的初步实现(使用vscode+node.js+express框架)

6.文件目录下你会看到生成了 package-lock.json 文件 以及 node_modules 文件 此时说明你的框架安装好了

express的基本使用 (该js文件名为 express基本使用.js):
1 .

//1. 引入express
	const express = require('express');
	
	//2. 创建应用对象
	const app = express();
	
	//3. 创建路由规则
	// request 是对请求报文的封装
	// response 是对响应报文的封装
	app.get('/', (request, response) => {
	    //设置响应
	    response.send('HELLO EXPRESS 1');
	});
	app.post('/', (request, response) => {
	    //设置响应
	    response.send('HELLO EXPRESS 2');
	});
	app.all('/', (request, response) => {
	    //设置响应
	    response.send('HELLO EXPRESS 3');
	});

	//4. 监听端口启动服务
	app.listen(8000, () => {
	    console.log("服务已经启动, 8000 端口监听中....");
	});

在集成终端中输入 node -express基本使用.js

Ajax 的初步实现(使用vscode+node.js+express框架)

3. 在浏览器中地址栏输入: http://127.0.0.1:8000/ 看到如下图 即服务端配置完成

Ajax 的初步实现(使用vscode+node.js+express框架)

二、 客户端的准备(前端代码 都引用了jquery来获取Dom元素

点击按钮 向服务端发送一个请求 然后将服务端返回的响应体结果在一个div中呈现出来 同时页面不刷新

使用原生的 ajax :

<!DOCTYPE html>
	<html lang="en">
	
	<head>
	    <meta charset="UTF-8">
	    <meta http-equiv="X-UA-Compatible" content="IE=edge">
	    <meta name="viewport" content="width=, initial-scale=1.0">
	    <title>AJAX GET 请求</title>
	    <script src="../js/jquery-3.0.0.min.js"></script>
	    <style>
	        #result {
	            width: 200px;
	            height: 100px;
	            border: solid 1px red;
	        }
	    </style>
	</head>
	
	<body>
	    <button>发送请求</button>
	    <div id="result"></div>
	</body>
	<script>
	    // 1.获取元素 给按钮添点击事件
	    $('button').on('click', function () {
	        // alert(1);
	        // 2.创建对象
	        const xhr = new XMLHttpRequest();
	        // 3.初始化 设置请求方式 和url
	        xhr.open('GET', 'http://127.0.0.1:8000/server');
	        // 4.发送
	        xhr.send();
	        // 5.事件绑定 处理服务器返回的结果
	        xhr.onreadystatechange = function () {
	            // readystate 是 xhr 对象中的属性 有 0 1 2 3 4
	            // 判断(4 表示服务端返回了所有的结果)
	            if (xhr.readyState == 4) {
	                if (xhr.status >= 200 && xhr.status < 300) {
	                    // 处理结果有: 行 头 空行 体
	                    // 1.响应行  
	                    // 2.将响应体 返回到客户端页面中
	                    $('div').html(xhr.response);
	                }
	
	            }
	            else {
	
	            }
	        }
	    })
	</script>
	
	</html>

必须注意

Ajax 的初步实现(使用vscode+node.js+express框架)

三、 运行程序

在目录文件夹右键在集成终端中打开 输入: node server.js

Ajax 的初步实现(使用vscode+node.js+express框架)Ajax 的初步实现(使用vscode+node.js+express框架)

运行 html 代码

Ajax 的初步实现(使用vscode+node.js+express框架)

点击发送请求

Ajax 的初步实现(使用vscode+node.js+express框架)

注: 至此 Ajax 已基本实现 !!

为了方便执行js脚本代码 避免老是重复开启窗口 我们这里 还需安装 nodemon 安装方式与express 一样 在终端输入:npm install -g nodemon

Ajax 的初步实现(使用vscode+node.js+express框架)

如果你不想下载jquery引入 你可以在网页上输入 bootcdn https://www.bootcdn.cn/

Ajax 的初步实现(使用vscode+node.js+express框架)Ajax 的初步实现(使用vscode+node.js+express框架)Ajax 的初步实现(使用vscode+node.js+express框架)

注:为了防止报错前面添加 crossorign="anonymous"

以上就是Ajax 的初步实现(使用vscode+node.js+express框架)的详细内容,更多关于Ajax初步实现的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
javascript new一个对象的实质
Jan 07 Javascript
理解Javascript_03_javascript全局观
Oct 11 Javascript
面向对象的Javascript之一(初识Javascript)
Jan 20 Javascript
jquery实现弹出层遮罩效果的简单实例
Mar 03 Javascript
易操作的jQuery表单提示插件
Dec 01 Javascript
基于jQuery实现音乐播放试听列表
Apr 14 Javascript
jQuery的promise与deferred对象在异步回调中的作用
May 03 Javascript
JavaScript 实现的checkbox经典实例分享
Oct 16 Javascript
使用canvas进行图像编辑的实例
Aug 29 Javascript
如何在postman测试用例中实现断言过程解析
Jul 09 Javascript
Nuxt pages下不同的页面对应layout下的页面布局操作
Nov 05 Javascript
原生JS实现拖拽功能
Dec 16 Javascript
帮你提高开发效率的JavaScript20个技巧
JavaScript实现贪吃蛇游戏
Vue过滤器(filter)实现及应用场景详解
GitHub上77.9K的Axios项目有哪些值得借鉴的地方详析
Axios取消重复请求的方法实例详解
使用JS实现简易计算器
微信小程序实现聊天室功能
You might like
php实现利用phpexcel导出数据
2013/08/24 PHP
smarty模板引擎使用内建函数foreach循环取出所有数组值的方法
2015/01/22 PHP
php实现批量上传数据到数据库(.csv格式)的案例
2017/06/18 PHP
代码精简的可以实现元素圆角的js函数
2007/07/21 Javascript
Node.js的包详细介绍
2015/01/14 Javascript
javascript委托(Delegate)blur和focus用法实例分析
2015/05/26 Javascript
JavaScript实现设计模式中的单例模式的一些技巧总结
2016/05/17 Javascript
利用JS判断字符串是否含有数字与特殊字符的方法小结
2016/11/25 Javascript
Javascript this 函数深入详解
2016/12/13 Javascript
js实现时间轴自动排列效果
2017/03/09 Javascript
详解JS中遍历语法的比较
2017/04/07 Javascript
easyui combogrid实现本地模糊搜索过滤多列
2017/05/13 Javascript
浅谈vue项目优化之页面的按需加载(vue+webpack)
2017/12/11 Javascript
使用vuepress搭建静态博客的示例代码
2019/02/14 Javascript
微信小程序如何利用getCurrentPages进行页面传值
2019/07/01 Javascript
layui的layedit富文本赋值方法
2019/09/18 Javascript
Electron+vue从零开始打造一个本地播放器的方法示例
2020/10/27 Javascript
Python中List.count()方法的使用教程
2015/05/20 Python
浅析python3中的os.path.dirname(__file__)的使用
2018/08/30 Python
python实现图片筛选程序
2018/10/24 Python
Python爬虫实战案例之爬取喜马拉雅音频数据详解
2020/12/07 Python
python读取图片颜色值并生成excel像素画的方法实例
2021/02/19 Python
买卖正宗运动鞋:GOAT
2019/12/06 全球购物
副总经理工作职责
2013/11/28 职场文书
毕业生大学生活自我总结
2014/01/31 职场文书
八一建军节部队活动方案
2014/02/04 职场文书
医学生就业推荐表自我鉴定
2014/03/26 职场文书
社区文艺活动方案
2014/08/19 职场文书
简爱读书笔记
2015/06/26 职场文书
保险公司岗前培训工作总结
2015/10/24 职场文书
高中生社会实践心得体会
2016/01/14 职场文书
家电创业计划书
2019/08/05 职场文书
SQL Server数据定义——模式与基本表操作
2021/04/05 SQL Server
Pygame Draw绘图函数的具体使用
2021/11/17 Python
使用Canvas绘制一个游戏人物属性图
2022/03/25 Javascript
德劲DE1102数字调谐收音机机评
2022/04/07 无线电