zoukankan      html  css  js  c++  java
  • 客户端请求与服务端接收

    客户端传递参数的几种方式:
    一般情况下有主要的两种:
    1、URL方式。
    2、Request Body方式。

    URL方式就是通过get方式传递参数。
    Request Body方式一般通过post传递参数。

    post的方式一般有:
    post-form-urlencode
    post-form-data
    post-json

    POST第一种:post-form-urlencode。

    (1)查看参数:
    通过浏览器查看网络请求【Network】->【Headers】->【From Data】:
    id:123
    name:hello
    (2)查看参数源信息
    通过浏览器查看网络请求【Network】->【Headers】->【From Data】右侧的【view source】:
    id=123&name=hello
    (3)查看客户端发送的数据格式
    通过浏览器查看网络请求【Network】->【Headers】->【Request Headers】:
    Content-Type : application/x-www-form-urlencoded

    POST第二种:post-form-data
    (1)查看参数:
    通过浏览器查看网络请求【Network】->【Headers】->【From Data】:
    id:123
    name:hello
    (2)查看参数源信息
    通过浏览器查看网络请求【Network】->【Headers】->【From Data】右侧的【view source】:
    ------WebKitFormBoundaryaUSyUoLPtL4bSqEk
    Content-Disposition: form-data; name="id"

    123
    ------WebKitFormBoundaryaUSyUoLPtL4bSqEk
    Content-Disposition: form-data; name="name"

    hello
    (3)查看客户端发送的数据格式
    通过浏览器查看网络请求【Network】->【Headers】->【Request Headers】:
    Content-Type : multipart/form-data/form-data; boundary=----WebKitFormBoundaryaUSyUoLPtL4bSqEk


    (----WebKitFormBoundaryaUSyUoLPtL4bSqEk是用来分割参数的)

    第三种:post-json:
    (1)查看参数:
    通过浏览器查看网络请求【Network】->【Headers】->【Request Payload】(没有From Data):
    {id:"123",name:"hello"}
    (2)查看参数源信息
    通过浏览器查看网络请求【Network】->【Headers】->【Request Payload】右侧的【view source】:
    {"id:"123","name":"hello"}
    (3)查看客户端发送的数据格式
    通过浏览器查看网络请求【Network】->【Headers】->【Request Headers】:
    Content-Type : application/json;charset=UTF-8
    =================================================================================
    服务端接收参数的几种方式:

    1、get请求的接收方式:
    $id = $_GET['id'];
    2、post-form-urlencode请求的接收方式:
    $id = $_POST['id'];
    3、post-form-data请求的接收方式:
    $id = $_POST['id'];
    4、post-json请求的接收方式:
    $json_data = file_get_contents("php://input");
    $arr_data = json_decode($json_data,true);
    $id = $arr_data['id'];

    知识点:
    通过PHP官网的手册说明,预定义变量,$_POST:
    当 HTTP POST 请求的 Content-Type 是
    application/x-www-form-urlencoded 或 multipart/form-data 时,
    会将变量以关联数组形式传入当前脚本。

    PHP有个协议php://,用于访问各个输入/输出流。
    php://input是个可以访问请求的原始数据的只读流。
    POST请求的情况下,最好使用php://input代替$HTTP_RAW_POST_DATA,因为它不依赖于特定的php.ini。
    multipart/form-data不能用php://input获取。

  • 相关阅读:
    H5+ 分享到微信、朋友圈代码示例
    H5+ 重写在线升级版本比较代码
    H5+ a页面打开b页面,b页面加载成功后关闭当前页面,闪屏的规避解决方案
    MUI
    MUI
    MUI
    MUI
    Vue实战之【企业开发常见问题】
    step1:准备歌词之《前端开发是个啥》
    element-ui级联选择器(Cascader)获取级联对象 (主要是想获取:label值)
  • 原文地址:https://www.cnblogs.com/gyfluck/p/10656180.html
Copyright © 2011-2022 走看看