分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

【个人笔记】《知了堂》ajax的get及post请求

发布时间:2023-09-06 01:07责任编辑:蔡小小关键词:暂无标签

 ajax

执行步骤

// 步骤

设置事件 调用函数

  1. 创建一个XHR对象
  2. 打开ajax通道,链接服务器,配置请求信息和参数
  3. 发送数据
  4. 设置回调函数
  5. 服务器接受请求,处理请求,查询数据库,响应 及 返回数据
  6. 回调函数接受数据,执行回调函数
  7. 回调函数中 更新页面。

  示例:

    

<!DOCTYPE html><html lang="en"><head> ???<meta charset="UTF-8"> ???<meta name="viewport" content="width=device-width, initial-scale=1.0"> ???<meta http-equiv="X-UA-Compatible" content="ie=edge"> ???<title>表单</title></head><body> ???<form action="login" method="get"> ???????<h1>登陆</h1> ???????用户名:<input type="text" name="userName" onblur="checkUser()"> ???????<span id="msg"></span> ???????密码:<input type="password" name="pwd"> ???????<input type="submit"> ???</form> ???<script> ???????function checkUser(){ ???????????var userName=document.forms[0].elements[0].value; ???????????var xhr=‘‘; ???????????if(window.XMLHttpRequest){ ???????????????xhr=new XMLHttpRequest();//DOM ???????????}else if(window.ActiveXObject){ ???????????????xhr=new ActiveXObject("Microsoft.XMLHTTP");//IE浏览器标准 ???????????} ???????????// 打开链接配置参数, ???????????// * ??1、 请求方式 ?就是要告诉它是get、post ???????????// * ??2、 请求地址 url ???????????// * ??3、同步 还是 异步(async),这个跟页面刷不刷新没有关系,是对程序本身的考虑,默认是异步请求true,true异步请求,这个是ajax里面的两个机制,true是异步表示当有东西回来了才执行,同步请求是false是比如有多个ajax请求,他会等一个结束了才执行第二个, ???????????xhr.open("get","checkUser.do?userName="+userName,true); ???????????xhr.send(null);//get方式 send是null
       ?//请求过后会有一个回调函数等待服务器响应在接受数据 ???????????xhr.onreadystatechange=function(){ ???????????????console.log(xhr.responseText) ???????????} ???????} ???</script></body></html>

连接数据库
   示例:

const mysql=require("mysql"); //引用数据库模块const checkUser=function(req,resp){ ???console.log(req) ???let userName=req.query.userName; ???let pool=mysql.createPool({ ???????host:"主机地址", ???????port:"主机端口", ???????user:"用户名", ???????password:"主机密码", ???????database:"数据库名" ???}) ???pool.getConnection(function(error,connection){ ???????if(error){ ???????????console.log(error) ???????} ???????let sqlStr="select * from t_user where u_name=?"; ???????connection.query(sqlStr,[userName],function(err,data){ ???????????console.log(data)
       //因为是注册嘛所以是data的长度大于0的时候说明数据库里面已经有这个账号了
       if(data.length>0){ ???????????????resp.send("用户名已经存在"); ???????????}else{ ???????????????resp.send("你好棒,快去注册吧。"); ???????????} ???????}); ???????connection.release(); ???})}module.exports={ ???checkUser:checkUser
}

服务器引用

const loginCheck=require("数据库模板地址");

服务器拦截请求

app.get("/拦截地址",loginCheck.checkUser)

 

【个人笔记】《知了堂》ajax的get及post请求

原文地址:http://www.cnblogs.com/1542986913Yu/p/7603304.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved