java - springmvc controller接收参数

查看:272
本文介绍了java - springmvc controller接收参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

思路很简单

controller接收Base64编码,将其转换成字节数组,再以流的形式生成图片。
我本地测试成功,可以形成图片,放到服务器上之后图片生成有问题。

经测试是因为传过来的参数有问题。
应为:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAAYCAYAAABjswTDAAANB0lEQVRYRx2WeZDb9XnGPz/d97nSStrV3pf3ss3iE5+LjbGpgWIwaVpCAm0CtCTTa9okbafTyR+ZdKbTNMlMShImx7gYMMYYA6VgjA/w+lzvrb1XXkkrabW67+vXQX+9/3xnvvM+7/N+。。。。

结果为:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAAYCAYAAABjswTDAAANB0lEQVRYRx2WeZDb9XnGPz/d97nSStrV3pf3ss3iE5 LjbGpgWIwaVpCAm0CtCTTa9okbafTyR ZdKbTNMlMShImx7gYMMYYA6VgjA/w lzvrb1XXkkrabW67 vXQX 9/3xnvvM 7/N 。。。。

加号都没了

应该怎样接收参数才能避免这个情况呢?

解决方案

先解决你的问题,将入参中的+用%2B代替

有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了。
编码的格式为:%加字符的ASCII码,即一个百分号%,后面跟对应字符的ASCII(16进制)码值。

  • + : URL 中+号表示空格,对应编码:%2B

  • 空格 :URL中的空格可以用+号或者编码表示,对应编码:%20

  • / :分隔目录和子目录,对应编码:%2F

  • ?:分隔实际的URL和参数,对应编码:%3F

  • %:指定特殊字符,对应编码:%25

  • #:表示书签,对应编码:%23

  • &:URL 中指定的参数间的分隔符,对应编码:%26

  • =:URL 中指定参数的值,对应编码:%3D

这篇关于java - springmvc controller接收参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆