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 相关文章推荐
jquery.validate分组验证代码
Mar 17 Javascript
js 第二代身份证号码的验证机制代码
May 12 Javascript
JS获取select的value和text值的简单实例
Feb 26 Javascript
jQuery实现类似淘宝网图片放大效果的方法
Jul 08 Javascript
JS判断是否手机或pad访问实现方法
Dec 09 Javascript
js仿京东轮播效果 选项卡套选项卡使用
Jan 12 Javascript
jquery ajaxfileupload异步上传插件使用详解
Feb 08 Javascript
设置cookie指定时间失效(实例代码)
May 28 Javascript
不使用JavaScript实现菜单的打开和关闭效果demo
May 01 Javascript
Vue项目使用localStorage+Vuex保存用户登录信息
May 27 Javascript
JS+css3实现幻灯片轮播图
Aug 14 Javascript
微信小程序弹窗禁止页面滚动的实现代码
Dec 30 Javascript
帮你提高开发效率的JavaScript20个技巧
JavaScript实现贪吃蛇游戏
Vue过滤器(filter)实现及应用场景详解
GitHub上77.9K的Axios项目有哪些值得借鉴的地方详析
Axios取消重复请求的方法实例详解
使用JS实现简易计算器
微信小程序实现聊天室功能
You might like
用PHP ob_start()控制浏览器cache、生成html实现代码
2010/02/16 PHP
深入理解PHP几个算法:PHP冒泡、PHP二分法、PHP求素数、PHP乘法表
2013/06/06 PHP
PHP采集类Snoopy抓取图片实例
2014/06/19 PHP
什么是PHP文件?如何打开PHP文件?
2017/06/27 PHP
微信接口生成带参数的二维码
2017/07/31 PHP
laravel model模型处理之修改查询或修改字段时的类型格式案例
2019/10/17 PHP
jquery仿QQ商城带左右按钮控制焦点图片切换滚动效果
2013/06/27 Javascript
jquery实现不同大小浏览器使用不同的css样式表的方法
2014/04/02 Javascript
JavaScript代码编写中各种各样的坑和填坑方法
2014/06/06 Javascript
Node.js异步I/O学习笔记
2014/11/04 Javascript
使用prop解决一个checkbox选中后再次选中失效的问题
2017/07/05 Javascript
vue-i18n结合Element-ui的配置方法
2019/05/20 Javascript
解决layui table表单提示数据接口请求异常的问题
2019/09/24 Javascript
jQuery实现开关灯效果
2020/08/02 jQuery
Python使用PIL库实现验证码图片的方法
2016/03/11 Python
Python基于scapy实现修改IP发送请求的方法示例
2017/07/08 Python
python并发编程之线程实例解析
2017/12/27 Python
djano一对一、多对多、分页实例代码
2019/08/16 Python
Python字符串的修改方法实例
2019/12/19 Python
使用PyWeChatSpy自动回复微信拍一拍功能的实现代码
2020/07/02 Python
CSS3系列之3D制作方法案例
2017/08/14 HTML / CSS
加拿大建筑和装修专家:Reno-Depot
2017/12/21 全球购物
为什么说Ruby是一种真正的面向对象程序设计语言
2012/10/30 面试题
商务邀请函范文
2014/01/14 职场文书
给儿子的表扬信
2014/01/15 职场文书
股票投资建议书
2014/05/19 职场文书
超越自我演讲稿
2014/05/21 职场文书
四风问题自我剖析材料
2014/10/07 职场文书
2014年领班工作总结
2014/11/25 职场文书
2014年小学少先队工作总结
2014/12/18 职场文书
教师听课评语大全
2014/12/31 职场文书
构建和谐校园倡议书
2015/01/19 职场文书
自己搭建resnet18网络并加载torchvision自带权重的操作
2021/05/13 Python
python之json文件转xml文件案例讲解
2021/08/07 Python
python神经网络 tf.name_scope 和 tf.variable_scope 的区别
2022/05/04 Python
win10电脑右下角输入法图标不见了?Win10右下角不显示输入法的解决方法
2022/07/23 数码科技