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 相关文章推荐
在 IE 中调用 javascript 打开 Excel 表
Dec 21 Javascript
Ext 表单布局实例代码
Apr 30 Javascript
获取HTML DOM节点元素的方法的总结
Aug 21 Javascript
jQuery插件jRumble实现网页元素抖动
Jun 05 Javascript
详解js中构造流程图的核心技术JsPlumb(2)
Dec 08 Javascript
Javascript数组Array方法解读
Mar 13 Javascript
jQuery移动端图片上传组件
Jun 12 Javascript
js利用appendChild对标签进行排序的实现方法
Oct 16 Javascript
BootStrap导航栏问题记录
Jul 31 Javascript
JS实现分页浏览横向图片(类轮播)实例代码
Nov 06 Javascript
VUE重点问题总结
Mar 19 Javascript
Vue实现腾讯云点播视频上传功能的实现代码
Aug 17 Javascript
帮你提高开发效率的JavaScript20个技巧
JavaScript实现贪吃蛇游戏
Vue过滤器(filter)实现及应用场景详解
GitHub上77.9K的Axios项目有哪些值得借鉴的地方详析
Axios取消重复请求的方法实例详解
使用JS实现简易计算器
微信小程序实现聊天室功能
You might like
全国FM电台频率大全 - 20 广西省
2020/03/11 无线电
异步加载技术实现当滚动条到最底部的瀑布流效果
2014/09/16 PHP
php中使用base HTTP验证的方法
2015/04/20 PHP
PHP7 新特性详细介绍
2016/09/06 PHP
常用PHP封装分页工具类
2017/01/14 PHP
利用ajax和PHP实现简单的流程管理
2017/03/23 PHP
使用jQuery操作Cookies的实现代码
2011/10/09 Javascript
js渐变显示渐变消失示例代码
2013/08/01 Javascript
js设置文本框中焦点位置在最后的示例代码(简单实用)
2014/03/04 Javascript
JavaScript设计模式初探
2016/01/07 Javascript
Node.js+ES6+dropload.js实现移动端下拉加载实例
2017/06/01 Javascript
vue使用axios时关于this的指向问题详解
2017/12/22 Javascript
全面解析vue router 基本使用(动态路由,嵌套路由)
2018/09/02 Javascript
浅谈Node 异步IO和事件循环
2019/05/05 Javascript
python按照多个字符对字符串进行分割的方法
2015/03/17 Python
Python os.rename() 重命名目录和文件的示例
2018/10/25 Python
django与vue的完美结合_实现前后端的分离开发之后在整合的方法
2019/08/12 Python
python模拟哔哩哔哩滑块登入验证的实现
2020/04/24 Python
python中字典增加和删除使用方法
2020/09/30 Python
最新PyCharm从安装到PyCharm永久激活再到PyCharm官方中文汉化详细教程
2020/11/17 Python
HTML5+lufylegend实现游戏中的卷轴
2016/02/29 HTML / CSS
2014端午节活动策划方案
2014/01/27 职场文书
简历中的自我评价怎么写
2014/01/29 职场文书
捐款倡议书范文
2014/02/02 职场文书
可口可乐广告词
2014/03/20 职场文书
银行贷款承诺书
2014/03/29 职场文书
连锁超市项目计划书
2014/09/15 职场文书
习总书记三严三实学习心得体会
2014/10/13 职场文书
2015年父亲节活动总结
2015/02/12 职场文书
太空授课观后感
2015/06/17 职场文书
2019关于实习生工作安排及待遇的管理方案!
2019/07/16 职场文书
2019年关于小学生课外阅读情况的分析报告
2019/12/02 职场文书
导游词之阳朔遇龙河
2019/12/16 职场文书
浅析Redis Sentinel 与 Redis Cluster
2021/06/24 Redis
MySQL的prepare使用以及遇到的bug
2022/05/11 MySQL
CSS浮动引起的高度塌陷问题
2022/08/05 HTML / CSS