在Chrome下,Base-64字符数组异常的无效长度
本文关键字:异常 无效 数组 字符 Chrome Base-64 | 更新日期: 2023-09-27 18:15:26
我必须将javascript函数生成的图像发送到服务器。为了做到这一点,我将图像的base64字符串存储在一个隐藏文本框中。
myTextBox.value = 'imagedata';
它适用于小文件(1MB或更小)。
但是,当我尝试发送大文件时,服务器返回"Base-64字符数组的长度无效"错误。
奇怪的是,我在Chrome上得到这个错误,但在Internet Explorer 10上没有。
当我用调试器检查字符串的值时,似乎它被Chrome截断了。
是什么导致了这个问题?有解决办法吗?
谢谢。
你不应该用一个文本框来容纳那么多内容。文本框只能容纳有限数量的内容。看来你的chrome浏览器已经达到极限了。
如果你真的必须存储那么多的内容,那么你就必须将内容分散到多个文本框中。
最大尺寸取决于不同的浏览器。查看更多信息
这可能是因为QueryString返回空格而不是+(它在Chrome中这样做,但不是I.E.)。
解决方案:
Decrypt(Request.QueryString["myvar"].Replace(' ', '+'))