zoukankan      html  css  js  c++  java
  • application/x-www-form-urlencoded从前端到后台

    html
    
    <form id="userForm1" enctype="application/x-www-form-urlencoded" method="get" action="http://localhost/pc/enc/t1">
    
    输入
    
    2+2
    2 2
    
    浏览器:
    
    
    http://localhost/pc/enc/t1?name=2%2B2&nick=2+2&pass=
    
    后台
    
    入参 : [Request(GET //localhost:3070/pc/enc/t1?name=2%2B2&nick=2+2&pass=)@298a8a52]
    request获取:
    - -------------name:2+2----------------------------
    - -------------nick:2 2----------------------------
    

      

    html:

    <form id="userForm2" enctype="application/x-www-form-urlencoded" method="post" action="http://localhost/pc/enc/t2">

    输入:

    2+2
    2 2

    浏览器:
    http://localhost:3070/pc/enc/t2

    后台:
    入参 : [Request(POST //localhost:3070/pc/enc/t2)@edf57b2]

    - -------------name:2+2----------------------------
    - -------------nick:2 2----------------------------


    总结:在form表单中编码格式application/x-www-form-urlencoded的时候 get提交 比如参数name=2+2 -》 浏览器会变成name=2%2B2 -》 后台接口获取参数的时候根据编码规则会正常显示2+2

    form表单中编码格式application/x-www-form-urlencoded 

    简而言之(application/x-www-form-urlencoded):

    2+2 -》2%2B2 -》 2+2
    2 2 -》2+2 -》 2 2

    以上描述的就是 从浏览器用户填写提交到浏览器跳转到后台 整个一个闭环结束了,是一个完整的步骤。

    而有些情况下我们看到这样的描述 空格变+号 +号变空格 这个又是怎么回事呢?

    我遇到的情况是这样的:
    1.先说+号变空格 比如:你在浏览器输入 localhost/pc/name=2+2 你会发现你在后台取的时候变成了2 2 其实这个情况和之前是一个的,只是你没有形成我说的一个完整的闭环,如果你想要后台得到的值是2+2,应该怎么做呢?
    参考前面的简而言之会发现。 我们应该把浏览器的url变成 localhost/pc/name=2%2B2 这样的话后台取到的就么有问题了,这个加号应用比如token参数中包含+号,那么这个+号是有链接前后字符串的意义的,那么就需要用URLEncoder以下,当然你可以后台编码,也可以前端编码,
    这个编码应该是base64,可以先百度看下base64 里面可以还有一些坑 比如前后端编码可能用的工具类实现的细节不一致导致回车符换行符的问题。基础很重要。
    
    




  • 相关阅读:
    Java & PHP RSA 互通密钥、签名、验签、加密、解密
    Spring Cloud:Security OAuth2 自定义异常响应
    Spring Cloud:统一异常处理
    Spring Cloud:多环境配置、eureka 安全认证、容器宿主机IP注册
    Hexo + GitEE 搭建、备份、恢复、多终端
    Spring:AOP面向切面编程
    如何找到适合自己的文档工具?
    比较好玩的工具类合集推荐!!!
    C++11 如何使代码仅执行一次?
    CMake 常用操作有哪些?
  • 原文地址:https://www.cnblogs.com/fofawubian/p/8276491.html
Copyright © 2011-2022 走看看