Vin*_*ent 2 http content-length ios
我在 ObjectiveC 中编程。我猜所有 oC 程序员都在使用相当标准的代码来发布:
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:NO];
NSString *postLength = [NSString stringWithFormat:@"%d",[postData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
Run Code Online (Sandbox Code Playgroud)
目前我收到警告说 NSUInteger 不应用作格式参数。该警告建议进行类型转换(unsigned long)。并用 %lu 替换 %d。这听起来很合乎逻辑。
在 HTTP 定义中,我找不到 Content-Length 实际上有多长。只是相当模糊的八位字节。是8位吗?我找不到答案!
Content-Length 的最大值没有具体限制。
https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13
14.13 Content-Length
Any Content-Length greater than or equal to zero is a valid value.
Run Code Online (Sandbox Code Playgroud)
此外,苹果文档setValue:forHTTPHeaderField:的NSMutableURLRequest类参考状态
此外,如果您上传的正文数据的长度可以自动确定(例如,如果您提供带有 NSData 对象的正文内容),则为您设置 Content-Length 的值。
| 归档时间: |
|
| 查看次数: |
13099 次 |
| 最近记录: |