0

我正在创建我正在拍照的 iPhone 应用程序。现在我想在线保存这张照片(比如链接 www.test.com/myiPhoneAppImages/)。

知道如何将图像从 iPhone 拍摄到网站吗?

我试着用谷歌搜索它,但没有找到任何有用的 tuts。

任何帮助/建议都会非常有用。

4

3 回答 3

0

尝试以下方法将图像发布到服务器

- (void) doPostImage

{
    NSAutoreleasePool   *pool                       = [[NSAutoreleasePool alloc]init];

    //Add your images here...
    NSArray *imageParams = [NSArray arrayWithObjects:@"myimage1.png", nil];



    NSString *urlString = @"http://yourURL";

    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];

    [request setURL:[NSURL URLWithString:urlString]];

    [request setHTTPMethod:@"POST"];



    NSMutableData *body = [NSMutableData data];



    NSString *boundary = @"---------------------------14737809831466499882746641449";

    NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary];

    [request addValue:contentType forHTTPHeaderField:@"Content-Type"];


    // add the image form fields

    for (int i=0; i<[imageParams count]; i++) {

        [body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];

        [body appendData:[[NSString stringWithFormat:@"Content-Disposition: attachment; name=\"image%d\"; filename=\"%@\"\r\n", i, [imageParams objectAtIndex:i]] dataUsingEncoding:NSUTF8StringEncoding]];

        [body appendData:[@"Content-Type: application/octet-stream\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];

        [body appendData:[NSData dataWithData:UIImageJPEGRepresentation(m_ImgVw_SelectedImage.image, 90)]];

        [body appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];

    }

    // add the text form fields


    // close the form
        [body appendData:[[NSString stringWithFormat:@"--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];

    // set request body
       [request setHTTPBody:body];



    // send the request (submit the form) and get the response

    NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
    [request release];

    NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];



    if(returnString)
    {
        [m_ctrlActivityView stopAnimating];
        NSString *m_strMessage=[NSString stringWithFormat:@" Your image is recieved"];
        [returnString release];
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Thank you" message:m_strMessage delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
        [alert show];
        [alert release];
    }
    else
    {
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Sorry" message:@"Error in server communication. Try again later" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
        [alert show];
        [alert release];

    }


    CFRunLoopRun();


    [pool release];
}
于 2013-03-06T09:15:27.463 回答
0

你可以在搜索引擎中搜索它。

数据方式:手机图片-----上传到网站-----由网站逻辑保存到数据库。

顺便说一句,你不需要自己编写上传逻辑,AFNetworking 对你来说是一个很酷的第三方框架。GitHub链接

于 2013-03-06T09:24:38.183 回答