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 里面可以还有一些坑 比如前后端编码可能用的工具类实现的细节不一致导致回车符换行符的问题。基础很重要。
    
    




  • 相关阅读:
    loadrunner实现字符串的替换
    Windows Server 2008 R2 实现多用户同时登陆
    LoadRunner测试场景中添加负载生成器
    loadrunner统计字符串中指定字符出现的次数
    loadrunner怎么将变量保存到参数中
    loadrunner生成随机数
    loadrunner取出字符串的后面几位
    loadrunner参数化excel数据
    LoadRunner常用函数列表
    loadrunner解决在项目中的难点解决
  • 原文地址:https://www.cnblogs.com/fofawubian/p/8276491.html
Copyright © 2011-2022 走看看