美文网首页
iOS网络之08关于原生的文件上传

iOS网络之08关于原生的文件上传

作者: 张不二01 | 来源:发表于2017-01-16 09:52 被阅读62次

    文件上传:(只能用POST请求)

    由于原生的文件上传过于繁琐,不建议深究

    • 其实文件上传的实质就是发送一个POST请求,根据要求设置好请求体然后发送就可以;
    • 但是请求体的格式要求很高,需要一一对应,任何一处错误就会发送失败

    1> 设置请求头:告诉服务器请求体里面内容的格式,文件参数

    [request setValue:@"multipart/form-data; boundary=zhangdanfeng" forHTTPHeaderField:@"Content-Type"];
    

    2>设置请求体:存放参数(文件参数和非文件参数)
    这个过于复杂,建议直接使用AFN,参照AFN的使用那篇文章

    3> 结束标记:参数结束的标志

    [body appendData:[@"--zhangdanfeng--\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
    

    4> MIMETYPE的获取:

    - (NSString *)MIMEType:(NSURL *)url{
        //    NSURL *url = [[NSBundle mainBundle] URLForResource:@"01.txt" withExtension:nil];
        NSURLRequest *request = [NSURLRequest requestWithURL:url];
        NSURLResponse *response = nil;
        [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];
        return response.MIMEType;
    }
    

    相关文章

      网友评论

          本文标题:iOS网络之08关于原生的文件上传

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