首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用NSURLRequest在Http请求中发送json数据

如何使用NSURLRequest在Http请求中发送json数据
EN

Stack Overflow用户
提问于 2010-12-16 10:30:10
回答 5查看 117.9K关注 0票数 80

我是objective-c的新手,到最近为止,我开始在请求/响应上投入大量的精力。我有一个可以调用url (通过http GET)并解析返回的json的工作示例。

这方面的工作示例如下

代码语言:javascript
复制
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
    [responseData setLength:0];
}

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    [responseData appendData:data];
}

- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
  NSLog([NSString stringWithFormat:@"Connection failed: %@", [error description]]);
}

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
    [connection release];
  //do something with the json that comes back ... (the fun part)
}

- (void)viewDidLoad
{
  [self searchForStuff:@"iPhone"];
}

-(void)searchForStuff:(NSString *)text
{
  responseData = [[NSMutableData data] retain];
    NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.whatever.com/json"]];
    [[NSURLConnection alloc] initWithRequest:request delegate:self];
}

我的第一个问题是-这种方法会扩大规模吗?或者这不是异步的(这意味着我在应用程序等待响应时阻塞了UI线程)

我的第二个问题是--我该如何修改请求部分来做POST而不是GET呢?是像这样简单地修改HttpMethod吗?

代码语言:javascript
复制
[request setHTTPMethod:@"POST"];

最后-如何将一组json数据作为简单字符串添加到这篇文章中(例如)

代码语言:javascript
复制
{
    "magic":{
               "real":true
            },
    "options":{
               "happy":true,
                "joy":true,
                "joy2":true
              },
    "key":"123"
}

提前谢谢你

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4456966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档