我正在构建一个ASP.Net mvc4应用程序,该应用程序允许用户通过POST请求发送编码为Base64字符串的图像。如何验证用户输入以确保base64字符串确实是一个映像并阻止用户在POST请求中传递恶意数据?例如防止外部URL被注入。
答案 0 :(得分:3)
我会在PHP示例中遵循相同的方法,并且基本上尝试从base64编码数据创建图像。如果数据不是有效图像,我希望图像会抛出异常,或者至少是null。
进行快速搜索,我发现example here on SO显示了几种从base64编码的字符串创建图像的方法。
假设ms是MemoryStream类型,我怀疑你可以使用try / catch包装其中一个方法:
new Bitmap(ms)
或
mage.FromStream(ms);
答案 1 :(得分:-1)
您是否考虑过用
装饰帖子方法?[ValidateAntiForgeryToken]