[oldboy-django][1初始django]web框架本质 + django框架 + ajax
web框架本质
浏览器(socket客户端)
- 发送请求(ip和端口,url http://www.baidu.com:80/index/)
- GET
请求头(数据请求行的url上: Http1. /index?nid=&name=alex)
请求体(空)
- POST
请求头
http1. /index?p= 或者 http 1.1 /index/
请求体
包含数据 接收响应
- 普通响应
--页面直接显示
-- 双方closed - 重定向响应
-- 再发起一次http请求 服务器(socket服务端)
启动服务器,并监听ip和端口,等待用户连接
接收请求,处理并返回
- 普通返回(字符串) # render, HttpResponse
-- 响应头
-- 响应体 - 重定向返回(只有响应头,响应体为空)
-- 响应头
LOCATION: "http://www.baidu.com"
django web框架
创建Project
admin-django startproject mysite
配置settings.py
- 模板路径TEMPLATES DIRS
- 静态文件路径 STATIC_URL, STATICFILES_DIRS
- 额外配置:
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
# 'django.middleware.csrf.CsrfViewMiddleware', # 这个本来不是注释的
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
路由关系
url -> 函数
视图函数
def login(request):
request.method
request.POST(获取请求体数据)
request.GET (获取请求头url的数据)
return HttpResponse("字符串")
return render(request, "login.html", {})
获取模板 + 数据 进行渲染(成字符串)
HttpResponse(字符串)
return redirect("要跳转的网址")
模板渲染
{{ msg_str }}
{{ msg_list. }}
{{ msg_dict.key }}
{% for item in msg_list %}
{% endfor%}
{% if > %}
{% endif %}
ajax(特殊的向后台发数据方式) --单独前端技术
- 引入jquery
- $.ajax({
url: '提交的地址',
type: 'post', // 提交的方法
data: {'k1':'v1, 'k2':'v2'},
success: function(data){
// 当服务器处理完成后,回调函数
}
})
- ajax 和 form区别
-- form表单提交,页面会刷新(不能满足需求:数据错误,不能保留对话框)
-- ajax提交页面不刷新,实现上面需求
-- ajax存在缺点:数据对的时候,服务器不能实现跳转,只能用前端实现跳转
location.href = "/classes/"
提交数据
模态对话框(ajax)(登录框)
- 少量输入框
- 数据少
新url方式(京东登录框,要打广告)
- 操作多
- 大量的数据
[oldboy-django][1初始django]web框架本质 + django框架 + ajax的更多相关文章
- Linux - nginx+uWSGI+django+virtualenv+supervisor发布web服务器
目录 Linux - nginx+uWSGI+django+virtualenv+supervisor发布web服务器 crm django项目部署流程 使用supervisro启动uwsgi,退出虚 ...
- Web框架本质及第一个Django实例
Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 半成品自定义web框架 impor ...
- Web框架本质及第一个Django实例 Web框架
Web框架本质及第一个Django实例 Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web ...
- WEB框架本质和第一个Django实例
Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 总的来说:Web框架的本质就是浏览 ...
- Django之Web框架本质及第一个Django实例
Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 半成品自定义web框架 impor ...
- Django框架----Web框架本质
Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 半成品自定义web框架 impor ...
- django基础一之web框架的本质
一 web框架的本质及自定义web框架 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端,基于请求做出响应,客户都先请求,服务端做出对应的响 ...
- Django:web框架本质
一,web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 1,自定义web框架 impo ...
- Django 基础 web框架本质
Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. import socket sk ...
随机推荐
- linux 命令——43 killall(转)
Linux 系统中的killall命令用于杀死指定名字的进程(kill processes by name).我们可以使用kill命令杀死指定进程PID的进 程,如果要找到我们需要杀死的进程,我们还需 ...
- Django疑难问题
1页面出现中文报错 :Non-ASCII character '\xe9' in file E:\CPaas\cpaas\views.py 解决:在页面顶部加入#coding=utf-8 2执行syn ...
- cf1151 B
题目连接 : https://codeforces.com/contest/1151/problem/B 可能我想法有问题,我怎么感觉B题的思路不直接想出来的,我想了一会才想出来,感觉不难,但可能有更 ...
- python 读取mat文件
import osimport scipy.io as sio import numpy as np #matlab文件名 matfn='/home/user/devkit/data/meta_det ...
- SOA架构设计案例分析
转载自:https://www.jdon.com/soa.html 首先Martin Fowler提出SOA歧义Service Oriented Ambiguity,认为"什么是SOA&qu ...
- 问题010:在Java中,什么是常量,什么是变量?
Java中常量如何分类? 1.整数常量,所有的整数. 整数又分为 int (integer) 占用4个字节 一个字节占几个二进制位?8个二进制位,一个整型变量占32位二进制位 (内存中开辟出来的存储空 ...
- C++ 限定名称查找
限定名称查找规则实际归纳下来很简单,先对::左边的名称进行查找(遵循,限定,无限定),然后在左边查找到的(此时只查找类型名称)名字的作用域内(含内联名称空间件)查找右边出现的名字,查找到即存在(故可以 ...
- Centos7 PHP的安装和配置
前面Nginx和httpd的安装都是为了支持PHP而弄的,然后这个目标就给了我一沉重的打击,等我慢慢道来,先来说说PHP的安装和配置吧. 一.PHP的安装 1.由于linux的yum源不存在php7. ...
- js函数带括号和不带括号赋给对象属性的区别
注意: 1.js为对象添加函数时,不要在函数后面加().一旦加了括号是表示将函数的返回值赋给对象的属性. 例:function test(){ document.writeln("我是js函 ...
- Nuxt.js 基础入门教程
原文链接 Vue 开发一个单页面应用,相信很多前端工程师都已经学会了,但是单页面应用有一个致命的缺点,就是 SEO 极不友好.除非,vue 能在服务端渲染(ssr)并直接返回已经渲染好的页面,而并非只 ...