async submitForm(formName) { const { data: res } = await this.$http.post("/api/user/selectUser", { username: this.ruleForm.username, }); if (res.length > 0) { this.$refs[formName].validate((valid) => { if (valid) { var d = new Date(this.ruleForm.birthday); var time = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate(); for (var i = 0; i < this.list.length; i++) { if (this.ruleForm.id_card == this.list[i].id_card) { this.token = false; console.log(this.token); break; } else { this.token = true; } } if (this.token) { this.$http.post("/api/user/addstudentbaoming", { name: this.ruleForm.name, username: this.ruleForm.username, sex: this.ruleForm.sex, phone: this.ruleForm.phone, xuejihao: this.ruleForm.xuejihao, class: this.ruleForm.class, teachername: this.ruleForm.teachername, schoolname: this.ruleForm.schoolname, schooladdress: this.ruleForm.schooladdress, id_card: this.ruleForm.id_card, birthday:this.ruleForm.birthday, notice_content: this.ruleForm.content, create_time: time, }); this.$message.success("报名成功!"); this.selectstudentbaoming(); this.$router.push("/contents/bmrk"); } else { this.$message.error("您的信息已经存在了!"); } } else { console.log("报名失败!"); return false; } }); } else { this.$message.error("抱歉,用户名输入有误!"); } }, resetForm(formName) { this.$refs[formName].resetFields(); }, }, };
时间: 2024-02-10 18:34:50 浏览: 238
Node.js如何对SQLite的async/await封装详解
看到你提供的代码中,有两个 post 请求,一个是 `/api/user/selectUser`,另一个是 `/api/user/addstudentbaoming`。如果报 504 错误,可能是因为后端服务器响应较慢,可以尝试以下几个方面来解决:
1. 检查后端服务器:确认后端服务器是否正常运行,是否存在服务器负载过高或者其他问题导致响应缓慢。
2. 增加后端服务器处理请求的时间:如果后端服务器在处理请求时需要耗费较长时间,可以考虑增加处理时间或优化代码逻辑,以减少响应时间。
3. 调整前端服务器设置的超时时间:前端服务器通常会限制请求的超时时间,如果后端服务器在规定时间内未响应,就会返回 504 错误。可以考虑调整前端服务器的超时时间来解决这个问题。
4. 使用分批次提交数据:如果要提交的数据较多,可以将数据分批次提交,每次提交一部分数据,减少单次提交数据量,从而减少服务器的响应时间。
5. 增加服务器的带宽和内存:如果服务器的带宽和内存不足,可能会导致服务器响应缓慢或超时。可以考虑增加服务器的带宽和内存,以提高服务器的性能。
6. 使用队列:可以将前端生成的数据放入队列中,由后端服务器异步处理。这样可以避免前端服务器等待后端服务器响应的时间,提高响应速度。
除此之外,也可以通过监控系统来查看请求的响应时间和服务器的负载情况,进一步分析和解决问题。
阅读全文