【问题标题】:Sending information to server using URLs使用 URL 向服务器发送信息
【发布时间】:2012-12-10 02:11:19
【问题描述】:

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

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

【问题讨论】:

    标签: iphone objective-c ios


    【解决方案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 的末尾附加了数据,这通常通过 http GET 操作完成,即“正常”方法。只需请求该 URL 的页面就足以将数据发送到服务器。 http POST 操作通常用于将表单数据发送到服务器,其中deviceToken=<deviceToken> 之类的对在消息正文中而不是在 URL 中传输。这样做的好处通常是,如果连接是 https:,则正文将被加密,因此数据保持安全。但是对于简单的不安全事务,使用带有 URL 中参数的 GET 就可以了。 iOS: how to perform a HTTP POST request? 有一个 POST 交易的描述

    【讨论】:

    • 这是一个非常棒的答案。感谢您如此清楚地解释一切并提供示例。答案是纯粹的清晰和努力!
    • 很高兴能够提供帮助!几个月前我不得不理清同样的事情,所以我知道你的感受。感谢您的支持!
    【解决方案2】:

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

    有关 NSURL 的更多信息,请在此处查看我的回答:NSURLConnection delegate method

    【讨论】:

    • 谢谢,所以我只需要使用 NSURLRequest 将信息发送到服务器吗?谢谢!
    猜你喜欢
    • 1970-01-01
    • 2014-05-12
    • 1970-01-01
    • 1970-01-01
    • 2012-11-29
    • 2011-06-24
    • 2017-04-12
    • 2023-01-12
    • 1970-01-01
    相关资源
    最近更新 更多