通过POST请求上传大型base64图片时丢失信息
Losing information when uploading large base64 image through POST request
我正在尝试上传一个图像字符串(base64)并将其保存为图像服务器端。
问题是,当我上传一个大的图像(1200像素宽度jpg全质量),我失去了一些信息,因为它的上传。
我的代码工作,虽然因为较小的图像上传和保存都很好。
我已经检查了我的ini php文件,并有最大文件大小上传和最大帖子足够高,它真的不应该是问题(40米)。
我的信息是这样传递的:
-
从手机摄像头获取base64图像数据(工作,可以显示图像客户端)
-
将图像数据放入隐藏表单字段(此时没有信息丢失)
-
通过ajax POST请求发送数据(没有错误或任何东西)
-
从php POST变量接收图像字符串(这是我丢失信息的地方)
——上传前strlen: 5,253,100
——strlen after upload: 524,288
- 使用base64_decode保存图像(工作良好,保存较小的图像正确)
现在当我上传更大的图像时,我没有得到任何错误。代码仍然输出一张图片,但图片只是原始图像的顶部四分之一左右,其余部分是灰色的。
我张贴了一些我的代码,但我很有信心它不是在我的代码,因为一切都工作得很完美,直到我提高了我的图像大小。在POST请求期间的某个时刻,我肯定会丢失信息。
任何提示我在正确的方向将是可爱的。谢谢阅读
我找到解决办法了。事实证明,当我将数据放入文本框中时,数据被截断了。我不知道文本框有最大限制,但在我的情况下,文本框截断我的数据在524288个字符。
相关文章:
- 访问布局信息是否也会导致浏览器重排
- Html页面上的多个Base64图像和平滑加载
- 正在将base64 jpeg从input-type=file上传到服务器
- 正则表达式在字符串中找到base64
- 定义完全独立的样式信息
- 使用html2canvas获取基本信息
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 从信息框调用弹出图像库
- 如何在不传递此信息的情况下查找被调用的元素
- 如何使用jquery将base64图像路径转换为真实路径
- 将谷歌自动完成地址信息放在页面上,而不是表格中
- 如何通过解析类信息来使用jQuery创建类
- 包含数据库中相关信息的开放模态
- 单击按钮即可在浏览器的新选项卡中打开 Sapui5 详细信息页面
- 如何调整信息窗口的大小并点击按钮?+更改信息窗口的内容
- ng在更新$scope后重复不更新信息
- 谷歌地图点击潜水触发信息窗口
- 根据CHECKBOX输入值动态更新DIV信息
- 如何使用ember.js在操作中传递当前上下文中目标旁边的信息
- 通过POST请求上传大型base64图片时丢失信息