流程是:
- 用户选择客户端上的图像。
- 只有文件名、内容类型和大小被发送到服务器。(例如“file.png”、“image/png”、“123123”)
- 响应是直接上传到 S3 的字段和策略。(例如“键:xxx,”alc“:...)
情况是,如果我将“file.pdf”的扩展名更改为“file.png”然后上传它,在上传到S3之前发送到服务器的数据是:
- “文件.png”
- “图像/PNG”
服务器说“ok”并返回 S3 字段进行上传。
但是发送的内容类型不是真正的内容类型。但是我如何在服务器上验证这一点?
谢谢!
例子:
测试 Redactorjs 服务器端代码 ( https://github.com/dybskiy/redactor-js/blob/master/demo/scripts/image_upload.php ) 它会检查文件内容类型。但是尝试上传假图片(在这里测试:http: //imperavi.com/redactor/),它不允许假图片。如我所愿!
但怎么可能呢?查看请求参数:(它作为图像/jpeg 发送,应该是有效的)