我正在向我的服务器设置请求,我已经得到了一些建议的帮助,但我想要对代码的一部分进行一些澄清。
在第二行代码中, setValue:和 forHTTPHeaderField:用于什么?我正在考虑使用HTTPHeaderField:设置mime类型...但我不确定setValue是什么或它如何影响我的请求。
[request setHTTPMethod: @"POST"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"content-type"];
[request setHTTPBody:postBodyData];
任何帮助将不胜感激。
答案 0 :(得分:1)
有关方法说明,请参阅NSMutableURLRequest reference,有关标题信息,请参阅 14.17内容类型部分的HTTP documentation。
的更多C-T详细信息Content-Type指定基础数据的媒体类型。内容编码可用于指示应用于数据的任何附加内容编码,通常用于数据压缩的目的,其是所请求资源的属性。没有默认编码。
任何包含实体主体的HTTP / 1.1消息都应该包含一个Content-Type标头字段,用于定义该主体的媒体类型。如果 并且只有当Content-Type字段没有给出媒体类型时, 收件人可以尝试通过检查媒体类型来猜测媒体类型 用于标识的URI的内容和/或名称扩展名 资源。如果媒体类型仍然未知,则收件人应该 将其视为“application / octet-stream”类型。
答案 1 :(得分:0)
每个HTML请求都包含一个请求标头和正文。
在您的示例中,您定义此请求的正文包含表单数据。
例如,如果您想提交一个json结构作为请求主体,请求的内容类型将设置为“application / json”。
答案 2 :(得分:0)
如果是内容类型,则可以是text/html
,text/xml
或image/gif
。
此处的目的是指定传输的数据类型。
有关标题字段定义,请参阅http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html。
有关不同的媒体类型,请参阅http://en.wikipedia.org/wiki/Internet_media_type。
另请参阅NSURLRequest reference了解该课程的具体内容。