iSt*_*rnZ 4 xcode objective-c nsurlrequest ios
我遇到了一个问题,我使用iGDB REST API,它需要使用GET方法为某些端点发送一些纯文本。
PostMan没有问题(通过选择“正文”>“原始”并粘贴我的查询),但是当我尝试使用 Objective-C 时,出现一个错误,告诉我“ GET 方法不能有正文”...
这是我的应用程序中使用的代码:
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:@"MY_URL"]];
[request addValue:@"text/plain" forHTTPHeaderField:@"Content-Type"];
[request setHTTPMethod:@"GET"];
[request setHTTPBody:[@"sort popularity desc;" dataUsingEncoding:NSUTF8StringEncoding]];
Run Code Online (Sandbox Code Playgroud)
编辑 02/10/2019
试图在标题中添加每个过滤器不起作用...
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:@"MY_URL"]];
[request setValue:[[@"id,name,first_release_date,release_dates,cover,platforms" dataUsingEncoding:NSUTF8StringEncoding] base64EncodedStringWithOptions:0] forHTTPHeaderField:@"fields"];
[request setValue:[[@"popularity desc" dataUsingEncoding:NSUTF8StringEncoding] base64EncodedStringWithOptions:0] forHTTPHeaderField:@"sort"];
[request setValue:[[@"5" dataUsingEncoding:NSUTF8StringEncoding] base64EncodedStringWithOptions:0] forHTTPHeaderField:@"limit"];
[request setValue:[[@"0" dataUsingEncoding:NSUTF8StringEncoding] base64EncodedStringWithOptions:0] forHTTPHeaderField:@"offset"];
Run Code Online (Sandbox Code Playgroud)
提前感谢您的任何答复!
根据iOS 13 发行说明,GET 请求不再允许具有正文:
所有带有包含主体的 GET HTTP 方法的 URLSessionTask 实例现在都会产生错误 NSURLErrorDataLengthExceedsMaximum。(46025234)
这使得URLSession更符合HTTP/1.1 RFC:
如果请求方法的规范(第 5.1.1 节)不允许在请求中发送实体主体,则消息主体不得包含在请求中。
| 归档时间: |
|
| 查看次数: |
3114 次 |
| 最近记录: |