因此,我目前使用了几种不同的方法来检查mime类型。用户使用表单上传文件,我获取mime类型,如果是application/zip,我允许它,如果是其他类型,我拒绝它。问题在于(我假设的浏览器)正在将mime类型更改为“应用程序/八位字节流”
我想知道如何才能验证文件是否正确。在表单上传时压缩。
代码:
$name = strtolower(end(explode('.', $filename)));
$accepted_types = array('application/zip', 'application/x-zip-compressed', 'multipart/x-zip', 'application/x-compressed');
foreach($accepted_types as $good_type) {
if($good_type == $type) {
$okay = true;
break;
} else {
$okay = false;
}
}
FWIW,您可以使用bin2hex
获得魔法字节。根据维基百科(https://en.m.wikipedia.org/wiki/Magic_number_(编程)#魔法数字(在文件中)),拉链头两个十六进制字节50
4B
$zip=file_get_contents("somefile.zip");
echo strtoupper(substr(bin2hex($zip),0,2))//504B
使用mime内容类型。
$type = mime_content_type($filename);
本文向大家介绍python 检查文件mime类型的方法,包括了python 检查文件mime类型的方法的使用技巧和注意事项,需要的朋友参考一下 magic 模块可以检查文件的mime类型,而不是从后缀名来判断,例如判断文件是不是视频或图片类型如下: 以上这篇python 检查文件mime类型的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。
问题内容: 有什么方法可以在Chrome中禁用。 实际上,我正在跨域发出JSONP请求。它可以在Firefox上正常工作,但是在使用chrome时,在控制台上会出现一些错误。 拒绝从“ https://example.com ” 执行脚本,因为其MIME类型(“ text / plain”)不可执行,并且启用了严格的MIME类型检查。 它在Mozilla中可完美运行。问题仅在Chrome中出现 这
问题内容: 我一直在尝试找出如何从Java 6中的字节数组中获取 MIME类型 ,但是不幸的是还没有能够获取MIME类型。 有人可以帮助我摆脱困境吗? 问题答案: 您可以使用Java 6中提供的类。此类专门用于获取 MIME类型 。 使用它来获取MIME类型,如下所示: 对于从文件中获取,您可以使用以下代码:
我已经读过这个和这个问题,它似乎建议可以在客户端使用javascript检查文件MIME类型。现在,我明白了真正的验证仍然必须在服务器端完成。我想执行客户端检查,以避免不必要的服务器资源浪费。 我说目前没有办法用javascript检查MIME类型,对吗?还是我漏掉了什么?
问题内容: 让我们说一个以Base64 String编码并提供给我的文件(例如myfile.jpeg)。我无法知道文件类型是什么。我想将字符串解码为文件(此示例中为图像)。我怎么知道文件的类型(例如jpeg)? 问题答案: 通常,基本的64位编码字符串可以绝对包含任何数据,因此无法知道其文件类型。 要确定它是否为JPEG图像的实例,您需要对其进行base64解码,然后执行诸如检查其幻数之类的操作,
在 Python 中,我们在定义类的时候可以定义属性和方法。当我们创建了一个类的实例后,我们还可以给该实例绑定任意新的属性和方法。 看下面一个简单的例子: class Point(object): def __init__(self, x=0, y=0): self.x = x self.y = y >>> p = Point(3, 4) >>> p.