600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > django的ajax_get请求

django的ajax_get请求

时间:2022-04-19 19:25:53

相关推荐

django的ajax_get请求

1、ajax

Ajax 介绍:AsynchronousJavascript and XML(异步的JavaScript和xml)。

普通请求,会携带整个页面提交,最明显的特征是刷新页面,并且请求可能阻塞整个服务。这样导致:

请求内容和响应内容冗余,

用户体验特别差。

基于以上的问题,后来出现了ajax请求。

1、ajax可以发起局部请求,页面整体可以不刷新,只是页面的局部刷新。

2、Ajax可以发起异步请求,请求的过程当中不会阻塞web正常操作和访问。

Ajax的兴起得益于Google公司的推广,Google公司在本公司大量的项目当中使用了ajax。这件事儿让微软公司感觉很尴尬,在1997年,微软公司就发明了ajax核心技术,1999年微软的ie5浏览器就开始兼容ajax对象(xmlhttpRequest),微软公司在后来就将ajax技术搁置了。

Ajax需要js语法进行编写,原生js的ajax比较复杂,因为各种浏览器对ajax对象的兼容是不一样的,使用js写ajax,首先要完成的是各种浏览器的ajax实例创建。比较繁复,所有我们通常用jq封装过的ajax。

Ajax get请求

需要一个页面,但是需要两个视图。

第一个视图只是负责生产ajax请求的页面:

1、视图文件

from django.http import JsonResponse#json+httpresponsedef ajax_get_data(request):result={"status":"error","content":""}#初始化一个返回结果的格式username=request.GET.get('username')#获取ajax_get请求过来的usernameprint(username)if username:#用户名不为空user=LoginUser.objects.filter(username=username).first()#查询数据库有没有和新输入的用户名一样的用户名print(user)if user:#如果有1结果,证明用户名已经被使用result["content"]="用户名重复"else:#如果没有结果,证明用户名没有被使用,可以使用result["status"]="success"result["content"]="用户名可以使用"else:#如果用户名可以为空result["content"]="用户名不可以为空"return JsonResponse(result)

2、静态页面 ajax_get.html

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Title</title><script src="/static/js/jquery.min.js"></script></head><body><input id="username" type="text"><button id="valid" type="button">效验</button><span id="tishi" style="color:red;"></span><script>$("#valid").click(function(){var username=$("#username").val();//获取输入的用户名var url="/agd/?username="+username;//拼接url$.ajax(//发起ajax请求,是 jq ajax的固定格式{ //ajax配置项必须在一个对象(字典)当中url:url,//请求的路由type:"get",//请求的类型success:function (data) {//请求成功的数据var content=data.content;$("#tishi").text(content)},error:function (error) {//请求失败的数据console.log(error)}})})</script></body></html>

3、路由配置

path('ag/',ajax_get),path('agd/',ajax_get_data),

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
相关阅读
django的请求

django的请求

2023-01-04

Django请求响应对象

Django请求响应对象

2023-03-04

django请求和响应

django请求和响应

2022-02-13

Django POST请求错误

Django POST请求错误

2018-12-02