精华内容
下载资源
问答
  • HTTP的两种常用请求方式GET和POST HTTPHTTP协议(HyperText Transfer),用于从万维网(WWWW:World Wide Web)服务器传输超文本到本地浏览器的传输协议。 HTTP是一个基于TCP/IP通信协议来传递数据(HTML文件,...

    HTTP的两种常用请求方式GET和POST

    HTTP:HTTP协议(HyperText Transfer),用于从万维网(WWWW:World Wide Web)服务器传输超文本到本地浏览器的传输协议。

    HTTP是一个基于TCP/IP通信协议来传递数据(HTML文件,图片文件,查询结果等)。

    一、GET方法

    使用GET方法时,查询字符串(名称或键值对)是在GET请求的URL中发送的:

    /test/demo_form.php?name1=value1&name2=value2
    

    说明:

    • GET 请求可被缓存
    • GET 请求保留在浏览器历史记录中
    • GET 请求的URL可被收藏为书签
    • GET 请求不应在处理敏感数据时使用
    • GET 请求有长度限制
    • GET 请求只应当用于获取数据

    GET 方法是默认的从浏览器向 Web 服务器传递信息的请求方法,它会产生一个很长的字符串,出现在浏览器的地址栏中。GET 方法有大小限制:请求字符串中最多只能有 1024 个字符。Servlet使用doGet()方法处理这种类型的请求。

    二、POST方法

    使用POST方法时,查询字符串(名称或键值对)是在POST请求的HTTP消息主体重发送的:

    POST /test/demo_form.php HTTP/1.1
    Host: runoob.com
    name1=value1&name2=value2
    

    说明

    • POST 请求不会被缓存
    • POST 请求不会保留在浏览器历史记录中
    • POST请求的URL不能被收藏为书签
    • POST 请求没有长度要求

    HTTP的方法中POST向后台传输数据比较可靠,POST 方法打包信息的方式与 GET 方法基本相同,但是 POST 方法不是把信息作为 URL 中 ? 字符后的文本字符串进行发送,而是把这些信息作为一个单独的消息进行发送。Servlet 使用 doPost() 方法处理这种类型的请求。

    三、GET方法与POST方法的区别

    • 在浏览器进行回退操作时,GET请求是无害的,而POST请求则会重新请求一次
    • GET请求参数是连接在URL后面的,而POST请求参数是存放在消息主体(Requestbody)内
    • GET请求因为浏览器对url长度有限制(不同浏览器长度限制不一样)对传参数量有限制,而post请求因为参数存放Requestbody内所以参数数量没有限制
    • 因为GET请求参数暴露在URL上,所以安全方面POST比GET更加安全
    • GET请求浏览器会主动缓存(Cache),POST并不会,除非主动设置
    • GET请求参数会保存在浏览器历史记录内,POST请求并不会
    • GET请求只能进行URL编码,而POST请求可以支持多种编码方式
    • GET请求产生1个Tcp数据包,POST请求产生2个Tcp数据包
    • 浏览器在发送GET请求时会将请求头(Header)和数据(Data)一起发送给服务器,服务器返回200状态码,而在发送POST请求时,会先将Header发送给服务器,服务器返回100,之后再将Data发送给服务器,服务器返回200
    展开全文
  • 具体见以下详细步骤 获取响应数据 获取请求头 获取响应头、状态码 有两点需要引起注意: ...b、text方法返回的是字符串格式的内容 ...cookie是一种类字典的数据格式,如果我们想把字典的值...res = requests.get('ht

    具体见以下详细步骤

    1. 获取响应数据

    2. 获取请求头

    3. 获取响应头、状态码
      有两点需要引起注意:
      a、响应结果一般有三种格式:HTML、json、text
      b、text方法返回的是字符串格式的内容

    4. 获取cookie
      cookie是一种类字典的数据格式,如果我们想把字典的值打印出来,可以根据key值去获取并打印出来,或以字典形式查看cookie


      以上操作步骤,代码如下所示:

    import requests
    # 1.发起请求后得到的响应数据存在res里面
    res = requests.get('http://www.baidu.com')
    # 2.获取请求头
    print("请求头:", res.request.headers)
    # 3.获取响应头、状态码
    print("响应头:", res.headers)
    print("状态码:", res.status_code)
    # 4.获取cookie
    print("cookie的值是:", res.cookies)
    print("以字典形式查看cookie", requests.utils.dict_from_cookiejar(res.cookies))
    

    在这里插入图片描述

    1. 发送带参数的get请求

    一个注册接口,示例如下:
    地址:http://test.lemonban.com/futureloan/mvc/api/member/register
    参数:{‘mobilephone’:‘18688773465’,‘pwd’:‘123456’}

    http请求里面我们都是把参数封装为字典,来作为参数发送,示范代码如下所示:

    import requests
    url = 'http://test.lemonban.com/futureloan/mvc/api/member/register'
    param = {'mobilephone': '18688773465', 'pwd': '123456'}
    res = requests.get(url, param)
    print("请求结果是---------:", res.json())
    

    结果如下:
    在这里插入图片描述

    注意

    • 参数一般都是字典格式发送
    • 如果返回的结果是json格式,我们可以把响应结果利用json()来进行解析。

    可查看request之get请求系列
    戳:
    1、python requests完成接口请求
    2、requests之get请求带参数示例详解
    3、requests之get发送带cookie的请求
    4、jmeter完成注册、登录、充值接口项目测试

    (* ̄(oo) ̄)仅供参考,有疑问可私聊博主哦,大家一起学习,共同进步!

    在这里插入图片描述

    展开全文
  • PHP处理HTTP请求参数

    2021-03-23 17:29:36
    GET请求GET请求是最简单的请求了,请求参数直接以 key value的形式拼接在URL后面。如:http://localhost/params.php?username=uusama&role=admin在服务端的PHP中,可以使用全局对象 _GET 获取参数,也可以使用...

    我们一般使用GET或者POST请求方式向服务端传送参数,在PHP服务端中,对于不同的请求格式,获取参数的方式不同。

    GET请求

    GET请求是最简单的请求了,请求的参数直接以 key value的形式拼接在URL后面。如:

    http://localhost/params.php?username=uusama&role=admin

    在服务端的PHP中,可以使用全局对象 _GET 获取参数,也可以使用_REQUEST 获取:

    var_dump(_GET);

    var_dump(_REQUEST);

    /** 两条语句结果相同:

    array (size=2)

    'username' => string 'uusama' (length=6)

    'role' => string 'admin' (length=5)

    */

    _GET 和_REQUEST 此时相同,其值为参数的key value 数组。但是一般推荐使用 $_GET,其性能更优而且更快。

    POST请求

    对于POST请求,获取参数的方法有如下几种:

    $_GET:获取URL中的参数

    $_POST: 获取以表单形式提交的参数

    $_REQUEST:$_GET 和 $_POST 的组合

    file_get_content(‘php://input’):获取原生的请求body流数据

    对于POST请求,PHP会针对头部中的 Content-Type 字段,对 body 中的参数进行一定的处理。该字段指明了传送body的编码方式。常用的有以下几种:

    application/x-www-form-urlencoded:浏览器的原生 form 表单格式

    multipart/form-data:传输文件

    application/json:列化后的 JSON 字符串

    text/xml:XML-RPC协议数据

    模拟请求工具Postman中提供了下面几种 post 参数格式:

    form-data

    x-www-form-urlencoded

    raw

    binary

    form-data

    这是一种特殊的POST方式,专门为HTML的表单提交设计

    参数按照 key value 形式放在 _POST 和_REQUEST中

    参数名中包含空格时,空格被替换为下划线

    参数值中的特殊字符保留原样不变

    php://input 流为空

    x-www-form-urlencoded 方式

    把body按照URL解析成 key value形式放到$_POST中

    需要添加头部:Content-Type: application/x-www-form-urlencoded

    对输入的参数名和参数值进行URLencode的形式传输

    php://input 输入流为原始 body 值

    该方法为特殊头部的一种 raw 方式

    raw 方式:

    需要注意:

    $_POST 为空

    php://input 输入流中有完整原始数据

    可以指定各种 Content-Type,以传输 json, html, xml 等文本格式数据

    binary

    二级制方式用于传输文件等二进制文件,可以直接从输入流中获取。

    Postman中不同的post参数测试

    服务端PHP代码为:

    var_dump(_GET);

    var_dump(_REQUEST);

    var_dump($_POST);

    var_dump(file_get_contents('php://input'));

    测试的PHP版本为 PHP7.6,测试工具Postman。

    form-data

    请求头部:

    POST /params.php?username=uusama&role=admin HTTP/1.1

    Host: localhost

    Cache-Control: no-cache

    Postman-Token: 12e89730-c04b-af7b-2e5d-d299eb5e26d2

    Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW

    ------WebKitFormBoundary7MA4YWxkTrZu0gW

    Content-Disposition: form-data; name="body_params name oo"

    test+oid%rte%20

    ------WebKitFormBoundary7MA4YWxkTrZu0gW--

    输出结果:

    G:\Projects\PHP_Projects\localhost\params.php:2:

    array (size=2)

    'username' => string 'uusama' (length=6)

    'role' => string 'admin' (length=5)

    G:\Projects\PHP_Projects\localhost\params.php:3:

    array (size=3)

    'username' => string 'uusama' (length=6)

    'role' => string 'admin' (length=5)

    'body_params_name__oo' => string 'test+oid%rte%20' (length=15)

    G:\Projects\PHP_Projects\localhost\params.php:4:

    array (size=1)

    'body_params_name__oo' => string 'test+oid%rte%20' (length=15)

    G:\Projects\PHP_Projects\localhost\params.php:5:string '' (length=0)

    x-www-form-urlencoded 方式

    请求头部:

    POST /params.php?username=uusama&role=admin HTTP/1.1

    Host: localhost

    Content-Type: application/x-www-form-urlencoded

    Cache-Control: no-cache

    Postman-Token: 1ff7f2da-b7c4-1fbd-a105-601e54a8cc4e

    body_para%7C'%22ms%2Bname++oo=test%2Boid%25rte%2520

    输出结果如下:

    G:\Projects\PHP_Projects\localhost\params.php:2:

    array (size=2)

    'username' => string 'uusama' (length=6)

    'role' => string 'admin' (length=5)

    G:\Projects\PHP_Projects\localhost\params.php:3:

    array (size=3)

    'username' => string 'uusama' (length=6)

    'role' => string 'admin' (length=5)

    'body_para|'"ms+name__oo' => string 'test+oid%rte%20' (length=15)

    G:\Projects\PHP_Projects\localhost\params.php:4:

    array (size=1)

    'body_para|'"ms+name__oo' => string 'test+oid%rte%20' (length=15)

    G:\Projects\PHP_Projects\localhost\params.php:5:string 'body_para%7C'%22ms%2Bname++oo=test%2Boid%25rte%2520' (length=51)

    raw 方式:

    请求头部:

    POST /params.php?username=uusama&role=admin HTTP/1.1

    Host: localhost

    Cache-Control: no-cache

    Postman-Token: c07c6411-7d4a-2539-1cca-4f9c77dbe43a

    pawe% ram:noa_&*^(#sdwet

    输出结果:

    G:\Projects\PHP_Projects\localhost\params.php:2:

    array (size=2)

    'username' => string 'uusama' (length=6)

    'role' => string 'admin' (length=5)

    G:\Projects\PHP_Projects\localhost\params.php:3:

    array (size=2)

    'username' => string 'uusama' (length=6)

    'role' => string 'admin' (length=5)

    G:\Projects\PHP_Projects\localhost\params.php:4:

    array (size=0)

    empty

    G:\Projects\PHP_Projects\localhost\params.php:5:string 'pawe% ram:noa_&*^(#sdwet' (length=27)

    展开全文
  • 参考博客https://blog..net/ckinghan58/article/details/73557414主要记一下个人比较常用的:1. Map requestHeaderMap = ...这个是打印出整个请求头信息完整的请求体信息{aa=aa, bb=bb, content-length=410, postma...

    参考博客https://blog..net/ckinghan58/article/details/73557414

    主要记一下个人比较常用的:

    1. Map requestHeaderMap = DataTransfer.requestHeaderToMap(request);

    这个是打印出整个请求头信息

    完整的请求体信息{aa=aa, bb=bb, content-length=410, postman-token=7d6f3cfa-d860-4cd4-8261-3139527da6b1, host=localhost:8080, content-type=application/json, connection=keep-alive, cache-control=no-cache, accept-encoding=gzip, deflate, user-agent=PostmanRuntime/3.0.9, accept=*/*}

    2.     System.out.println("请求头"+request.getHeader("aa"));

    这个是获取请求头中的信息

    按照key为aa查出来的值为aa

    好记性不如赖笔头…………

    //获取请求方式

    System.out.println(req.getMethod());

    //获取项目名称

    System.out.println(req.getContextPath());

    //获取完整请求路径

    System.out.println(req.getRequestURL());

    //获取除了域名外的请求数据

    System.out.println(req.getRequestURI());

    //获取请求参数

    System.out.println(req.getQueryString());

    System.out.println("----------------------------------------------------------");

    //获取请求头

    String header = req.getHeader("user-Agent");

    System.out.println(header);

    header = header.toLowerCase();

    //根据请求头数据判断浏览器类型

    if(header.contains("chrome")){

    System.out.println("您的访问浏览器为谷歌浏览器");

    }else if(header.contains("msie")){

    System.out.println("您的访问浏览器为IE浏览器");

    }else if(header.contains("firefox")){

    System.out.println("您的访问浏览器为火狐浏览器");

    }else{

    System.out.println("您的访问浏览器为其它浏览器");

    }

    System.out.println("----------------------------------------------------------");

    //获取所有的消息头名称

    Enumeration headerNames = req.getHeaderNames();

    //获取获取的消息头名称,获取对应的值,并输出

    while(headerNames.hasMoreElements()){

    String nextElement = headerNames.nextElement();

    System.out.println(nextElement+":"+req.getHeader(nextElement));

    }

    System.out.println("----------------------------------------------------------");

    //根据名称获取此重名的所有数据

    Enumeration headers = req.getHeaders("accept");

    while (headers.hasMoreElements()) {

    String string = (String) headers.nextElement();

    System.out.println(string);

    }

    结果如下:

    GET

    /httpServletRequest

    http://localhost:8080/httpServletRequest/index1

    /httpServletRequest/index1

    name=ckinghan&password=admin

    ----------------------------------------------------------

    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36

    您的访问浏览器为谷歌浏览器

    ----------------------------------------------------------

    host:localhost:8080

    connection:keep-alive

    cache-control:max-age=0

    upgrade-insecure-requests:1

    user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36

    accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

    accept-encoding:gzip, deflate, sdch, br

    accept-language:zh-CN,zh;q=0.8

    ----------------------------------------------------------

    text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

    展开全文
  • jqueryajax常用参数:$.ajax({url:"http://cloud.keji01.com/",//ajax请求地址修改成自己的cache:false,//(默认:true,dataType为script和jsonp时默认为false)设置为false将不缓存此页面,建议使用默认type:"GET",//...
  • RestTemple进行Get请求,原来水这么深...
  • 几乎每个web项目都会用到http请求,空闲时间封装了一个工具类,分享出来,用到的时候可以直接拷贝使用 import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache....
  • Get请求中使用@Validated进行参数校验方案汇总
  • (1)get请求请求参数包含在url中,例如:http://localhost:8001/index?username=小文&password=123456 利用request.query.参数名来获取get方式请求参数 ?之前的内容是请求文件的地址 username和password是...
  • 文章标题请求参数所在位置path参数query参数header参数body参数application/x-www-form-urlencodedapplication/jsonmultipart/form-datacookies参数 请求参数所在位置 先来说说URL是什么,它是定义网络上某个特定的...
  • Ajax请求参数比较长,第5行参数大概1100个字符吧,是接口的请求报文。$.ajax({type:"POST",url:"${ctx}/test.action?method=invokeInfo",//beforeSend:alert("beforeSend"),data:{reqXmlStr:newReqXmlStr},//传给...
  • 前端squid反向代理到nginxnginx根据http_user_agent防DDOS首先查看访问日志,找出可疑访问 找到http_user_agent 的特征,然后再作过滤"Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0; MyIE 3.01)Cache-...
  • HTTP常用请求头大揭秘

    2021-02-25 21:50:11
    这节我们就专门挑一些最常用请求头,举例说明请求头对应支撑的HTTP功能。 4.1、数据类型、压缩编码,语言,内容协商和质量值 我们来看一个最基本的HTTP交互。 其中,GET表示方法,就不多说了。 Host:Host 请求头...
  • 场景: vue中在与后端进行数据交互时,使用axios发送请求,不做配置直接使用get请求传递数组类型参数的时候,后端是无法接收数据的,需要对axios一些简单的配置才能让后端完美的接收数组 let params = ['2021715','...
  • 本文主要介绍在 Java 编程中发送 HTTP 请求的两种常用方法: JDK 原生的 HttpURLConnection 发送 HTTP 请求 Apache HhttpClient 发送 HTTP 请求 两种方法都可以发送 HTTP 请求,第一种是 Java 原生的,因此使用...
  • 1.1、获取http请求参数是一种刚需我想有的小伙伴肯定有过获取http请求的需要,比如想前置获取参数,统计请求数据做服务的接口签名校验敏感接口监控日志敏感接口防重复提交等等各式各样的场景,这时你就需要获取 HTTP...
  • 导读两种最常用HTTP 方法是:GET 和 POST。什么是 HTTP ?超文本传输协议(HTTP)的设计目的是保证客户端与服务器之间的通信。HTTP 的工作方式是客户端与服务器之间的请求-应答协议。web 浏览器可能是客户端,而...
  • 1.1axios的get请求 1.2 axios的post的请求 1.3 axios的put的请求 1.4 axios的delete请求
  • get方法和post方法的区别: get方法是从服务器上获取资源;post方法是向服务器传送数据; get方法参数是通过url传递的,...get请求参数会被完整保留在浏览器历史记录里,而post中的参数不会被保留;其他人可以从浏览
  • import org.apache.http.HttpEntity; import org.apache.http.client.config.RequestConfig; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.Ht
  • OpenResty常用HTTP请求API

    2021-03-16 22:52:33
    获取请求URLngx.var.request_uri获取请求方法ngx.req.get_method()过滤非GET请求if 'GET' ~= ngx.req.get_method() thenngx.exit(ngx.HTTP_NOT_FOUND)end获取请求参数获取GET请求参数ngx.req.get_uri_args:返回一个...
  • urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求。其常被用到的子模块在Python3中的为urllib.request和urllib.parse,在Python2中是urllib和urllib2。二.由易到难的爬虫程序:...
  • HTML5游戏引擎(十二)-发送http请求——GET 方法 & POST 方法 & 发送请求 & 发送带参数的请求 & 加载位图文件 发送http请求 Egret 中封装了 XMLHttpRequest 进行异步的数据交互。 GET 方法 GET ...
  • 在客户端和服务器之间进行请求和响应时,有两种基本的请求方式:get和post。其中,get请求表示从指定的资源请求数据,post请求表示向...HTTP请求格式: 在HTTP请求中,首先是请求行;其次是,请求头(header);然后
  • ajax 常用参数

    2021-08-06 09:40:21
    Ajax常用参数$.ajax({type: 'GET',// 这是请求的方式 可以是GET方式也可以是POST方式,默认是GETurl: ' xxx.PHP ',// 这是请求的连接地址 一般情况下这个地址是后台给前端的一个连接,直接写就可以dataType: 'json',/...
  • 目前JAVA实现HTTP请求的方法最常用的有两种: 通过HttpURLConnection去实现,HttpURLConnection是JAVA的标准类,是JAVA比较原生的一种实现方式。 通过HTTPClient这种第三方的开源框架去实现。HTTPClient对HTTP的...
  • 一般 HttpPost 对传参 Json 的处理是:// 中文处理StringEntity se = new StringEntity(json, Consts.UTF_8);httppost.setEntity(se);HttpPost、HttpPut继承了HttpEntityEnclosingRequestBase类,所以有setEntity方法...
  • 1. 直接把表单里面的参数写进 Controller 相应方法的形参中去,这个获取参数的方法适合get提交,而不适合post提交。 /** * 1.直接把表单的参数写在Controller相应的方法的形参中 * @param username * @param ...
  • SpringBoot 拦截器获取http请求参数—— 所有骚操作基础目录SpringBoot 拦截器获取http请求参数—— 所有骚操作基础获取http请求参数是一种刚需定义拦截器获取请求为什么拦截器会重复调两遍呢?ServletInputStream...
  • gin请求参数处理

    千次阅读 2021-02-01 03:56:32
    本章介绍Gin框架获取请求参数的方式1.获取Get 请求参数Get请求...value=111获取Get请求参数常用函数:func (c *Context) Query(key string) stringfunc (c *Context) DefaultQuery(key, defaultValue string) stri...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 421,767
精华内容 168,706
关键字:

参数很常用get请求