post请求

HTTP详解

半世苍凉 提交于 2019-12-02 14:51:30
一 、基础概念 URI 请求和响应报文 二、HTTP 方法 GET HEAD POST PUT PATCH DELETE OPTIONS CONNECT TRACE 三、HTTP 状态码 1XX 信息 2XX 成功 3XX 重定向 4XX 客户端错误 5XX 服务器错误 四、HTTP 首部 通用首部字段 请求首部字段 响应首部字段 实体首部字段 五、具体应用 连接管理 Cookie 缓存 内容协商 内容编码 范围请求 分块传输编码 多部分对象集合 虚拟主机 通信数据转发 六、HTTPS 加密 认证 完整性保护 HTTPS 的缺点 七、HTTP/2.0 HTTP/1.x 缺陷 二进制分帧层 服务端推送 首部压缩 八、HTTP/1.1 新特性 九、GET 和 POST 比较 作用 参数 安全 幂等性 可缓存 XMLHttpRequest 参考资料 一 、基础概念 URI URI 包含 URL 和 URN。 请求和响应报文 1. 请求报文 2. 响应报文 二、HTTP 方法 客户端发送的 请求报文 第一行为请求行,包含了方法字段。 GET 获取资源 当前网络请求中,绝大部分使用的是 GET 方法。 HEAD 获取报文首部 和 GET 方法类似,但是不返回报文实体主体部分。 主要用于确认 URL 的有效性以及资源更新的日期时间等。 POST 传输实体主体 POST 主要用来传输数据,而

Django之视图层的简介与使用

一世执手 提交于 2019-12-02 14:35:16
Django的View(视图) 一个视图函数(可以是类),简称视图,是一个简单的Python 函数(可以是类),它接受Web请求并且返回Web响应。 响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片。 无论视图本身包含什么逻辑,都要返回响应。代码写在哪里也无所谓,只要它在你当前项目目录下面。除此之外没有更多的要求了——可以说“没有什么神奇的地方”。为了将代码放在某处,大家约定成俗将视图放置在项目(project)或应用程序(app)目录中的名为 views.py 的文件中。 一个简单的视图 下面是一个以HTML文档的形式返回当前日期和时间的视图: from django.http import HttpResponse import datetime def current_datetime(request): now = datetime.datetime.now() html = "<html><body>It is now %s.</body></html>" % now return HttpResponse(html) 代码分析: 首先,我们从 django.http 模块导入了 HttpResponse 类,以及Python的 datetime 库。 接着,我们定义了 current_datetime 函数。它就是视图函数

django-Views之装饰器(四)

只谈情不闲聊 提交于 2019-12-02 11:34:03
1.选择支持的请求方式 from django.views.decorators.http import require_http_methods from django.shortcuts import render @require_http_methods(['GET','POST']) def index(request): return render(request,"search.html") 2.只允许GET方法 require_GET() 3.只允许POST方法 require_POST() 4.只允许get和head方法 require_safe() 来源: https://www.cnblogs.com/xiximayou/p/11743237.html

MySQL注入--Payload

谁说胖子不能爱 提交于 2019-12-02 09:18:26
MySQL注入--Payload Mirror王宇阳 2019-10-22 SQL的注入流程一般如下: 1、判断是否有SQL注入漏洞(判断注入点) 2、判断 数据库 的系统架构、数据库名、web应用类型等 3、获取数据库信息 4、加密信息破解 5、进行提权 前篇 注入漏洞分类: 数字型注入: 当输入(注入)的参数为整数,则可以认为该漏洞注入点为数字型注入; http://192.168.2.172/index.php/?id=8 在后端中SQL语句构成如下: select * from user where id=8; 字符型注入: 当输入(注入)的参数为字符/串时可以认定为是字符型注入漏洞 其它注入: POST注入:注入字段在POST数据中 Cookie注入:注入字段在Cookie数据中 延迟注入:使用数据库延迟特性进行注入 搜索注入:在搜索栏中利用恶意代码进行注入 base64注入:注入字符串经过base64加密 判断注入点 ' or 1=1 # and 1=1 # and '1'='1' # 1') and ('1=1') # url/?id=1/1 url/?id=1/0 判断数据库系统类型 PHP搭建的Web应用后端为MySQL JSP搭建的Web应用后端为Oracle ASP搭建的Web应用后端为MSSQL MySQL 字符串连接判断: ?id=1 and '1'+'1

ASP.NET jquery ajax传递参数

ぃ、小莉子 提交于 2019-12-02 07:56:35
转自: https://www.cnblogs.com/umlzhang/p/3654486.html ASP.NET jquery ajax传递参数 第一种:GET传递 前台 ajax GET 传递 :即在请求的地址后面加上参数,URL地址长度有显示,安全性低 后台接收:Request.QueryString[“参数名字”]! 例如: function LoadBar(id) { var project = id; var month = $("#txtMonth").val(); $.ajax({ type: "GET", async: false, url: 'GetProjectScore.aspx?project=' + project + '&month=' + month, dataType: 'json', beforeSend: function () { }, success: function (msg) { if (msg) { optionBar.xAxis.categories = eval(msg.projectscore.orgname); optionBar.series = eval(msg.projectscore.series); var t = eval("(" + subtitle + ")"); optionBar.subtitle =

Python开发【Django】:中间件、CSRF

╄→尐↘猪︶ㄣ 提交于 2019-12-02 07:12:02
目录 Python开发【Django】:中间件、CSRF CSRF 中间件 Python开发【Django】:中间件、CSRF CSRF 1、概述   CSRF(Cross Site Request Forgery)跨站点伪造请求,举例来讲,某个恶意的网站上有一个指向你的网站的链接,如果某个用户已经登录到你的网站上了,那么当这个用户点击这个恶意网站上的那个链接时,就会向你的网站发来一个请求,你的网站会以为这个请求是用户自己发来的,其实呢,这个请求是那个恶意网站伪造的。   为了避免上面情况的出现,Django引用了CSRF防护机制;Django第一次响应来自某个客户端的请求时,会在服务器端随机生成一个 token,并把这个 token 放在 cookie 里。然后每次 POST 请求都会带上这个 token,这样就能避免被 CSRF 攻击。如果POST请求中没有token随机字符串,则返回403拒绝服务 在返回的 HTTP 响应的 cookie 里,django 会为你添加一个 csrftoken 字段,其值为一个自动生成的 token 在所有的 POST 表单时,必须包含一个 csrfmiddlewaretoken 字段 (只需要在模板里加一个 tag, django 就会自动帮你生成,见下面) 在处理 POST 请求之前,django 会验证这个请求的 cookie 里的

jwt token认证

夙愿已清 提交于 2019-12-02 06:41:39
目录 1、drf-jwt手动签发与校验 2、drf小组件:过滤、筛选、排序、分页 => 针对与群查接口 jwt_token源码分析(入口) 签发token源码分析 校验token源码分析 手动签发token 签发源码小总结: 手动校验token 校验源码小总结 1、drf-jwt手动签发与校验 2、drf小组件:过滤、筛选、排序、分页 => 针对与群查接口 jwt_token源码分析(入口) rest_framework_jwt --> views.py --> ObtainJSONWebToken(JSONWebTokenAPIView) class ObtainJSONWebToken(JSONWebTokenAPIView): serializer_class = JSONWebTokenSerializer 然后到父类中JSONWebTokenAPIView的post方法 def post(self, request, *args, **kwargs): #从get_serializer获取serializer serializer = self.get_serializer(data=request.data) ........ 点击get_serializer def get_serializer(self, *args, **kwargs):

Django视图层

柔情痞子 提交于 2019-12-02 04:44:21
目录 Django----视图层 视图函数 HttpRequest对象 HttpRequest对象常用属性part1 HttpRequest对象常用属性part2 HttpRequest对象常用属性part3 HttpRequest对象常用属性part4 HttpResponse对象 render() redirect() JsonResponse CBV和FBV django的视图层由两种形式构成:FBV和CBV FBV与CBV 即CBV源码分析 简单文件上传 Django----视图层 视图函数 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应。响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . . 是任何东西都可以。无论视图本身包含什么逻辑,都要返回响应。代码写在哪里也无所谓,只要它在你的Python目录下面。除此之外没有更多的要求了——可以说“没有什么神奇的地方”。为了将代码放在某处,约定是将视图放置在项目或应用程序目录中的名为 views.py 的文件中。 下面是一个返回当前日期和时间作为HTML文档的视图: from django.shortcuts import render, HttpResponse, HttpResponseRedirect, redirect import

Springboot — 用更优雅的方式发HTTP请求(RestTemplate详解)

荒凉一梦 提交于 2019-12-02 03:24:07
RestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。 我之前的HTTP开发是用apache的HttpClient开发,代码复杂,还得操心资源回收等。代码很复杂,冗余代码多,稍微截个图,这是我封装好的一个post请求工具: 本教程将带领大家实现Spring生态内RestTemplate的Get请求和Post请求还有exchange指定请求类型的实践和RestTemplate核心方法源码的分析,看完你就会用优雅的方式来发HTTP请求。 1.简述RestTemplate 是Spring用于同步client端的核心类,简化了与http服务的通信,并满足RestFul原则,程序代码可以给它提供URL,并提取结果。默认情况下,RestTemplate默认依赖jdk的HTTP连接工具。当然你也可以 通过setRequestFactory属性切换到不同的HTTP源,比如Apache HttpComponents、Netty和OkHttp。 RestTemplate能大幅简化了提交表单数据的难度,并且附带了自动转换JSON数据的功能,但只有理解了HttpEntity的组成结构(header与body),且理解了与uriVariables之间的差异,才能真正掌握其用法

Django的日常-3

倾然丶 夕夏残阳落幕 提交于 2019-12-02 03:20:30
目录 Django的日常-3 JsonResponse form表单上传文件 CBV的源码分析 视图层 模板传值 过滤器 标签 自定义过滤器和标签 Django的日常-3 JsonResponse 在之前我们就知道,不同语言或者说系统之间,Json格式的数据是通用性最好的,所以我们通常会选择用json格式来从后端向前端传输数据,在Django里面,我们不需要像之前那样导入json模块然后用 json.dumps和json.loads 来打包和解析json数据,因为我们有一个专门的函数来做json数据的转换,就叫做JsonResponse. # 首先我们还是需要导入这个函数 from django.http import JsonResponse # 下面的内容我们需要写在一个函数里面,方便调用 def index(request): user = {'username':'nick哈哈哈','pwd':'123'} return JsonResponse(user,json_dumps_params={'ensure_ascii':False}) l = [1, 2, 3, 4, 5, 5, 6] return JsonResponse(l, safe=False) ''' 在使用JsonResponse模块的时候,要注意的几点是: 1.