使用URL将信息发送到服务器

时间:2012-12-09 16:53:54

标签: iphone objective-c ios

我目前正在与PHP开发人员一起设置一些服务器端代码,但是,我不确定如何将send服务器API信息存储在数据库中。他让我send在这样的网址中exampleserver.com/register?deviceToken=[deviceToken]&otherstuff[otherStuff]NSURLRequest。我没有创建URL字符串的问题,我的问题实际上是在做一些事情。我知道这是一个非常愚蠢的问题,但我对Objective-C很新,更不用说与服务器通信了!我之前使用AFJSONRequestOperationPost从服务器中提取了信息。它是同一个想法还是我们不再做请求?我几次见过{{1}}这个词,但我不确定这是不是我要追求的。任何帮助清除这一点将非常感激。此外,无论解决方案如何,我都需要它是异步的!

感谢您的帮助,
问候,
麦克

2 个答案:

答案 0 :(得分:1)

NSURLRequest仍然可以正常运行。如果你想要一个更强大的库来处理post,get,put等,并且可以异步工作并直接链接到核心数据,我推荐RestKit(https://github.com/RestKit/RestKit)。

有关NSURL的更多信息,请参阅我的答案:NSURLConnection delegate method

答案 1 :(得分:1)

这对我有用:

    NSURL *aURL = [NSURL URLWithString:@"http://www.google.co.uk/search?hl=en&q=hello%20world"];
NSURLRequest *aURLRequest = [NSURLRequest requestWithURL:aURL];
[NSURLConnection sendAsynchronousRequest:aURLRequest queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *error){
    NSLog(@"response=%@", response);
    NSLog(@"data=%@", data);
    NSLog(@"error=%@", error);
}];

您显示的URL将数据添加到URL的末尾,这通常通过http GET操作(“普通”方法)完成。只需要在该URL处询问页面即可将数据发送到服务器。 http POST操作通常用于将表单数据发送到服务器,其中像deviceToken=<deviceToken>这样的对在邮件正文而不是URL中传输。这样做的好处通常是,如果连接是https:,主体将被加密,因此数据保持安全。但是对于一个简单的不安全事务,使用带有URL中的参数的GET是可以的。在iOS: how to perform a HTTP POST request?

处有一个POST交易的描述