OStack程序员社区-中国程序员成长平台

标题: ios - 发送帖子请求IOS 7 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 05:59
标题: ios - 发送帖子请求IOS 7

好的,我一直在努力适应 objective-c ,这对我来说就像过山车一样,无论如何我只是想向服务器发送一个简单的 post 请求,但它看起来并不像原来那么简单安卓。目前我有以下方法:

-(void)postMethod
{

    [self.connection cancel];

    //initialize new mutable data
    NSMutableData *data = [[NSMutableData alloc] init];
    self.receivedData = data;

    //initialize url that is going to be fetched.
    NSURL *url = [NSURL URLWithString"http://blank.com/register.php"];

    //initialize a request from url
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[url standardizedURL]];

    //set http method
    [request setHTTPMethod"OST"];
    //initialize a post data
    NSString *postData = @"username=postTest&displayname=testingPoster&password=postest&passwordc=postest&email=posttesting%40posttest.com&bio=I+am+tesring+the+post+test&skills=I+am+a+hacka&interests=hacing+and+cracking&skills_needed=some+php+skills&company=Post+testing+the+script&dob=naaaaaa&occupation=Qoekkk";
    //Here you can give your parameters value

    //set request content type we MUST set this value.

    [request setValue"application/x-www-form-urlencoded; charset=utf-8" forHTTPHeaderField"Content-Type"];

    //set post data of request
    [request setHTTPBody:[postData dataUsingEncoding:NSUTF8StringEncoding]];

    //initialize a connection from request
    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];
    self.connection = connection;


    //start the connection
    [connection start];
}

我有一个按钮可以调用该函数:

- (IBAction)registerid)sender {

    [self postMethod];


}

我确实确保在我的头文件中包含了 NSURLConnectionDataDelegate,但是当我单击按钮时尝试发送请求时,它没有通过,它只是停止程序,它没有任何错误。任何建议,我一直在网上搜索只是为了学习如何发送帖子请求,我认为这应该不是很困难。

只是以防万一,我正在使用最新的 iphone sdk for ios 7。



Best Answer-推荐答案


请注意,对于 iOS 7 NSURLSession是推荐的方式。 NSURLConnection 可能会在未来的版本中被弃用。您可以使用 URL session tasks 的三种类型之一发出您的 POST 请求。 . NSURLSessionDataTask几乎等同于 NSURLConnection。 NSURLSessionUploadTaskNSURLSessionDownloadTask (将接收到的数据写入磁盘)可以在后台 session 中使用并继续(在另一个进程中),即使您的应用程序被挂起或崩溃。更多内容请阅读 this guide .

关于ios - 发送帖子请求IOS 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21213994/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4