当前位置: 首页 > news >正文

网站建设过程中要注意的事项山西省吕梁市天气

网站建设过程中要注意的事项,山西省吕梁市天气,本地南昌网站建设,文案代写收费标准系列文章目录 以下几篇侧重点为JavaScript内容0.0 JavaScript入门宝典#xff1a;核心知识全攻略#xff08;上#xff09;JavaScript入门宝典#xff1a;核心知识全攻略#xff08;下#xff09;Django框架中Ajax GET与POST请求的实战应用VSCode调试揭秘#xff1a;L… 系列文章目录 以下几篇侧重点为JavaScript内容0.0 JavaScript入门宝典核心知识全攻略上JavaScript入门宝典核心知识全攻略下Django框架中Ajax GET与POST请求的实战应用VSCode调试揭秘Live Server助力完美测试Cookie与Session远超“Open in Browser” 文章目录 系列文章目录前言一、跨域二、登录1.前端html2.后端逻辑 三、注册1.前端html2.后端逻辑最后遇到的一个小问题 前言 在本博客中我们将通过登录注册两个实战案例深入探讨如何在Django项目中使用Ajax进行网络请求以实现数据交互。同时我们还将详细解析如何利用Cookie和Session来管理用户状态确保用户信息的安全性和一致性。 一、跨域 跨域问题参考下面这篇文章 跨域问题与Django解决方案深入解析跨域原理、请求处理与CSRF防护 二、登录 1.前端html !DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleLogin/titlescript src./js/jquery-2.2.0.min.js/scriptscriptfunction fnLogin() {var username_label document.getElementById(username);var password_label document.getElementById(password);var user {username: null,password: null,}user.username username_label.value;user.password password_label.value;$.ajax({url: http://127.0.0.1:8000/app/login/,type: POST,dataType: json,data: user,xhrFields: { withCredentials: true }, //设置支持携带cookiesuccess: function (response) {if (response.code 200) {alert(response.message)window.location.href exd8_news.html;} else {alert(response.message)}},error: function () {alert(请求失败)}, async: true})}/script /headbodyinput typetext idusername placeholder请输入用户名:brinput typetext idpassword placeholder请输入密码:brinput typebutton valueLogin onclickfnLogin();/body/html2.后端逻辑 # app/views.py class LoginView(View):def post(self,request):username request.POST.get(username)password request.POST.get(password)try:user UserModel.objects.get(usernameusername)if user.password password:request.session[userid] user.id #print(-------------------)print(request.session[userid]) return JsonResponse({message: 登录成功, code: 200})else:return JsonResponse({message: 密码错误登录失败, code: 201})except Exception as e:print(e)return JsonResponse({message: 用户不存在登录失败, code: 202})三、注册 1.前端html !DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleRegister/titlescript src./js/jquery-2.2.0.min.js/scriptscriptfunction fnRegister() {var username_label document.getElementById(username);var phone_label document.getElementById(phone);var password_label document.getElementById(password);var cpassword_label document.getElementById(cpassword);var user {username: null,phone: null,password: null,cpassword: null,}user.username username_label.value;user.phone phone_label.value;user.password password_label.value;user.cpassword cpassword_label.value;$.ajax({url: http://127.0.0.1:8000/app/register/,type: POST,dataType: json,data: user,success: function (response) {if (response.code 200) {alert(response.message 跳转到登录页面)console.log(response);window.location.href login.html;} else {alert(response.message)}},error: function () {console.log(请求失败);}})}/script /headbody用户名input typetext idusernamebr手机号input typetext idphonebr密码input typepassword idpasswordbr确认密码input typepassword idcpasswordbrbutton onclickfnRegister()注册/button /body/html2.后端逻辑 # app/views.py class RegisterView(View):def post(self, request):# 用户名username手机号phone密码password# put delete# postman 测试# 1.传参为raw格式时# 2.传参为x-www-form-urlencoded时print(request.POST)print(-------------------)print(request.body)# -------------------------------------------------# 1.传参为raw格式时# 字符串转成字典 通过decode解码# 使用put delete时# data request.body.decode()# print(data data)# # #***使用raw 传参数时***# import json# res_dict json.loads(data)# print(username res_dict.get(username))## username res_dict.get(username)# password res_dict.get(password)# phone res_dict.get(phone)# cpassword res_dict.get(cpassword)# -----------------------------------------------------------------# 2.传参为x-www-form-urlencoded时username request.POST.get(username)password request.POST.get(password)phone request.POST.get(phone)cpassword request.POST.get(cpassword)import reif re.match(r^1[3-9]\d{9}$, phone):try:UserModel.objects.get(phone__exactphone)return JsonResponse({message: 用户已存在请登录})except:# 两次密码是否一致if password cpassword:user UserModel()user.name usernameuser.password passworduser.phone phoneuser.save()# 取决于逻辑# request.session[]return JsonResponse({message: 注册成功})else:return JsonResponse({message: 两次输入密码不一致})else:return JsonResponse({message: 手机号不满足规则}) 1.使用postman测试POST传参为raw格式时 控制台输出 2.使用postman测试POST传参为x-www-form-urlencoded时 控制台输出 最后遇到的一个小问题 使用vscode测试前端页面时使用open in browser和open with live server可能给会导致不同的结果详情见下篇文章:VSCode调试揭秘Live Server助力完美测试Cookie与Session远超“Open in Browser”
http://www.w-s-a.com/news/173003/

相关文章:

  • 洛阳工程建设信息网站山西响应式网页建设哪里好
  • 企业网站建设市场的另一面wordpress分类插件
  • 网站建设名头公司展厅装修
  • 小型购物网站开发费用郑州企业网站模板建站
  • 个体商户建自己的网站做销售建设积分兑换官方网站
  • 网站建设与维护培训网页制作专业用语
  • 建站特别慢wordpress网页制作与设计项目策划书
  • 视频制作素材免费网站头像制作在线生成器
  • 网站建设是不是可以免费建站广州做网站 信科网络
  • 闸北区网站设计叫别人做网站后怎么更改密码
  • 为什么想做网站运营建设工程教育网站
  • 站长基地百度推广整体优化网站
  • 门窗 东莞网站建设wordpress外链论坛
  • 安徽省建设部网站官网还能用的wap网站
  • 企业网站设计开发网站关键词优化seo
  • 郑州高档网站建设台州网站建设推广
  • 广东省建设信息港网站WordPress手机缩略图设置
  • 优秀网站主题平顶山专业做网站公司
  • wordpress返回顶部插件wordpress站群seo
  • 企业网站建设报价表百度竞价托管哪家好
  • 织梦网站首页打开慢淄博网站推广那家好
  • 苏州高端网站建设kgwl互动网站建设的主页
  • 宿州网站建设哪家公司好个人网站制作方法
  • 网站正能量晚上在线观看视频站长之家关键词挖掘工具
  • 建设网站怎么判断是电脑还是手机仿租号网站源码网站开发
  • seo百度网站排名软件重庆巫山网站设计公司
  • 搭建视频播放网站网站排名诊断
  • 网站域名注册网站centos做网站服务器
  • 网站服务器共享的 vpsh5页面制作软件电脑版
  • 免费手机网站申请上海网站建设设计公司哪家好