美文网首页
网络编程(09)MIMEType

网络编程(09)MIMEType

作者: Rui哥 | 来源:发表于2018-05-25 13:10 被阅读23次

    一、部分文件的MIMEType

    类型 文件拓展名 MIMEType
    图片 png image/png
    图片 bmp\dib image/bmp
    图片 jpe\jpeg\jpg image/jpeg
    图片 gif image/gif
    多媒体 MP3 image/audio/mpeg
    多媒体 MP4\mpg4\m4vmp4v video/mp4
    文本 js application/javascript
    文本 pdf application/pdf
    文本 text\txt text/plain
    文本 json application/json
    文本 xml text/xml

    二、 获取文件的MimeTyep的途径主要有以下几种

    • 1查表
    • 2 发送网络请求,从请求的响应头获取
        [[NSURLSession sharedSession] dataTaskWithURL:[NSURL URLWithString:@"http://127.0.0.1/abc.png"] completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
            NSLog(@"response MIMEType:%@ ",response.MIMEType);
        } ];
    
    ``
    - 3 调用C语言的Api 获取
    ```objc
    -(NSString *)mimeTypeForFileAtPath:(NSString *)path{
        
        if ([[NSFileManager defaultManager] fileExistsAtPath:path]) {
            return nil;
        }
        
       
        CFStringRef UTI = UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension,
                                              (__bridge CFStringRef)[path pathExtension],
                                              NULL);
        
        CFStringRef mimeType =   UTTypeCopyPreferredTagWithClass(UTI,  kUTTagClassMIMEType);
        
        CFRelease(UTI);
        if (mimeType != nil) {
            return (__bridge NSString *)(mimeType);
        }
        
        return @"application/octet-stream"; // 这时一种通用的Mimetype
        
    }
    
    
    • 4 使用通用的二进制数据类型 "application/octet-stream"

    相关文章

      网友评论

          本文标题:网络编程(09)MIMEType

          本文链接:https://www.haomeiwen.com/subject/fhigfftx.html