get请求参数含单引号被转义

遇到一个问题,我在发get请求的时候,通过params传值,参数值带单引号的时候,requestUrl中单引号会被转义,例如,一个get请求 http://localhost:8080/getkey,参数params='aaa',request url在请求时变成http://localhost:8080/getkey?params=%27aaa%27,类似这种问题,单纯从前端的角度,有啥好的解决方法没

阅读 9.5k
4 个回答

这才是正确的,为啥要 “解决” 一个正确的东西?

HTTP 协议里已经指出有关 URL/URN 国际标准定义,叫 URI。对于 URI 来说,你这是非法字符,必须转义才是合法的。

对于后端来说,大部分语言和框架都会自动处理反序列化问题,不用手动再反转义一次;少部分不带这种处理的,自己动手反转义一次。

这个是正常的,为了防止参数包含特殊字符才自动urlencode编码,一般web框架都会自动解码其值。如果没有或者自己实现,可以找编程语言相应urlencode操作方法或者库即可

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题