Axios的使用
导入axios.js的脚本:
<script src="js/axios.js"></script>
对于get方式:直接在url后面添加参数和值
<script>
axios({
method:"get",
url:"http://localhost:8088/axiosServlet?username=zhangsan"
}).then(function (resp) {
console.log(resp.data)
})
</script>
对于post请求方式:需要在data里面传递参数和值
<script>
axios({
method:"post",
url:"http://localhost:8088/axiosServlet",
data:"username=zhangsan"
}).then(function (resp) {
console.log(resp.data)
})
</script>
请求方式别名
axios.get(url[,config])
axios.post(url,data[,config]) data表示请求参数
因此上面可以简化成:
axios.get("http://localhost:8088/axiosServlet?username=zhangsan").then(function (resp) {
console.log(resp.data)
})
axios.post("http://localhost:8088/axiosServlet","username=zhangsan").then(function (resp) {
console.log(resp.data)
})
案例:注册验证用户名
前端页面:这里要注意response写的字符串的类型,我这servlet写的true,它默认给我识别成了Boolean类型,因此直接判断他是不是true就行,然而在前面我们两边都是用字符串判断的
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<table>
<tr><td>用户名</td><td><input id="user" type="text" name="username"/><span id="dulp" style="color: red;display: none">用户名已存在</span></td></tr>
<tr><td>密码</td><td><input type="password" name="password"><br/></td></tr>
</table>
<script src="js/axios.js"></script>
<script>
document.getElementById("user").onblur=function(){
var value=this.value;
axios.get("http://localhost:8088/judgeServlet?username="+value).then(function (resp) {
console.log(typeof(resp.data))
//注意这里的判断跟Ajax的有点不一样
if(resp.data){
document.getElementById("dulp").style.display=''
}else {
document.getElementById("dulp").style.display="none"
}
})
}
</script>
</body>
</html>
servlet代码:
@WebServlet(urlPatterns = "/judgeServlet")
public class JudgeServlet extends HttpServlet {
private UserService userService = new UserService();
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List<UserInfo> userInfos = userService.selectAll();
String t = request.getParameter("username");
System.out.println(t);
for (UserInfo userInfo : userInfos) {
if(userInfo.getUserName().equals(t)){
response.getWriter().write("true");
return;
}
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?