【实战项目】某考务成绩查询小程序

熊猫开发记录 – QQ:1040375575

【实战项目】某考务成绩查询小程序

一、项目功能

实现通过身份证号、手机号、手机验证码三层进行后台成绩获取,并输出提示。

二、项目涉及

项目涉及前端开发:vue.js+layui
后端开发:springboot+element
调用接口:腾讯云短信api

遇到困难:

  1. 项目采用前后端分离,导致出现跨域难题
  2. vue或axios发出网络请求是不带cookie属性的,每次都是一个新的请求

三、部分代码

// 判断是否微信打开
function isWechat() {
		var ua = navigator.userAgent.toLowerCase();
		return ua.match(/MicroMessenger/i) == "micromessenger";
	};

...

//设置页面禁止缩放
// 禁止放大
var lastTouchEnd = 0;
document.documentElement.addEventListener('touchend', function (event) {
	var now = Date.now();
	if (now - lastTouchEnd <= 300) {
		event.preventDefault();
	}
	lastTouchEnd = now;
}, false);
document.documentElement.addEventListener('touchstart', function (event) {
	if (event.touches.length > 1) {
		event.preventDefault();
	}
}, false);

//身份证格式是否正确判断
// 判断身份证正确
function checkid(value) {
	var code = value; //identity 为你输入的身份证  
	var city = {
		11: "北京",
		12: "天津",
		13: "河北",
		14: "山西",
		15: "内蒙古",
		21: "辽宁",
		22: "吉林",
		23: "黑龙江 ",
		31: "上海",
		32: "江苏",
		33: "浙江",
		34: "安徽",
		35: "福建",
		36: "江西",
		37: "山东",
		41: "河南",
		42: "湖北 ",
		43: "湖南",
		44: "广东",
		45: "广西",
		46: "海南",
		50: "重庆",
		51: "四川",
		52: "贵州",
		53: "云南",
		54: "西藏 ",
		61: "陕西",
		62: "甘肃",
		63: "青海",
		64: "宁夏",
		65: "新疆",
		71: "台湾",
		81: "香港",
		82: "澳门",
		91: "国外 "
	};
	var tip = "";
	var pass = true;
	var reg = /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/;
	if (!code || !code.match(reg)) {
		tip = "身份证号格式错误";
		pass = false;
	} else if (!city[code.substr(0, 2)]) {
		tip = "地址编码错误";
		pass = false;
	} else {
		//18位身份证需要验证最后一位校验位1 
		if (code.length == 18) {
			code = code.split('');
			//∑(ai×Wi)(mod 11)  
			//加权因子  
			var factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
			//校验位  
			var parity = [1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2];
			var sum = 0;
			var ai = 0;
			var wi = 0;
			for (var i = 0; i < 17; i++) {
				ai = code[i];
				wi = factor[i];
				sum += ai * wi;
			}
			var last = parity[sum % 11];
			if (parity[sum % 11] != code[17]) {
				tip = "校验位错误";
				pass = false;
			}
		}
	}
	if (pass) {
		return true;
	}
	if (!pass) console.log("tip" + tip);
	return pass;
};

//成绩请求
$.ajax({
	url: "https://domain/queryScore/queryScoreTable",
	data: JSON.stringify(params),
	contentType: "application/json",
	type: "post",
	xhrFields: {
		withCredentials: true // 设置withCredentials为true,允许发送cookie
	},
	// 设置头部属性
	beforeSend: function (request) {
		request.setRequestHeader("cookie", $.cookie('JSESSIONID')); // 设置请求头中的Cookie值
	},
	success: function (data) {
		if (data['flag'] == true) {
			layer.msg(data['msg']);
			console.log('获取成功');
			var list = data['data'];
			// 渲染成绩表格
			UserTable(list);
		} else {
			layer.msg(data['msg']);
		}
	}

});

后端跨域代码:
在这里插入图片描述

四、程序实现

在这里插入图片描述

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是考务管理系统测试计划书的建议内容: 1. 测试目标 考务管理系统的测试目标是发现和报告系统中的缺陷,以确保系统符合用户需求和预期,并且满足系统的质量要求。 2. 测试范围 考务管理系统测试的范围包括但不限于以下方面: - 用户登录和权限管理 - 考试安排和管理 - 考试成绩管理 - 学生信息管理 3. 测试方法 考虑到考务管理系统的特点,测试方法主要采用黑盒测试。主要测试方法包括以下方面: - 功能测试:确保系统能够按照规定的流程和要求进行正常操作。 - 性能测试:针对系统的性能指标进行测试,例如响应时间和并发用户数等。 - 兼容性测试:测试系统在不同浏览器和操作系统下的兼容性。 - 安全性测试:测试系统的安全性和用户权限控制是否符合要求。 - 可用性测试:测试系统的易用性和用户体验是否符合要求。 4. 测试计划 测试计划应该包含以下要素: - 测试阶段和时间表 - 测试用例 - 测试人员和分工 - 测试环境和工具 - 缺陷报告和管理流程 - 测试评估和报告 5. 测试环境 考务管理系统测试环境应该包括以下内容: - 操作系统:Windows、Linux、macOS等 - 浏览器:Chrome、Firefox、Safari、IE等 - 数据库:MySQL、Oracle等 - 工具:JMeter、Selenium、Postman等 6. 缺陷管理 缺陷管理应该包括以下内容: - 缺陷报告:包括缺陷的描述、重现步骤、截图等。 - 缺陷跟踪:记录缺陷的状态、处理人员、处理时间等信息。 - 缺陷分析:对缺陷进行分类、分析和统计,以便找出缺陷的根本原因。 - 缺陷验证:对缺陷进行验证,确保缺陷已经完全修复。 7. 测试评估和报告 测试评估和报告应该包括以下内容: - 测试结果:包括测试用例的执行结果、测试缺陷的数量和状态等。 - 测试评估:对测试结果进行评估,包括测试覆盖率、质量指标、风险评估等。 - 测试报告:提供详细的测试报告,包括测试结果、缺陷报告、测试评估等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值