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获取。

  • 相关阅读:
    Spark2 Dataset DataFrame空值null,NaN判断和处理
    Spark2 文件处理和jar包执行
    &与&&, |与||区别
    Scala实现乘法口诀
    Hive desc
    Hive FUNCTIONS函数
    Hive show
    MySQL行列转换拼接
    MySQL字符串连接
    SQLServer之索引简介
  • 原文地址:https://www.cnblogs.com/gyfluck/p/10656180.html
Copyright © 2011-2022 走看看