Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Carregar imagem do iOS usando ASIHTTPRequest


Eu conheço o seu problema.. Eu enfrentei o problema smilar.. Você tem que dar o caminho para a imagem.. O código a seguir irá obter a imagem do caminho.. se a imagem estiver no índice do seu diretório, você deve obter o caminho um pouco diferente .. Tente isso e me avise ..
        NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
        NSString *documentsDirectory = [paths objectAtIndex:0]; // Get documents folder
        NSString *dataPath = [documentsDirectory stringByAppendingPathComponent:@"photo.jpg"];
[request setFile:[NSURL URLWithString:dataPath] forKey:@"photo"];

//IF the photo is in directory index use the following code to get the url
NSString *filename = [[NSBundle mainBundle] pathForResource:@"photo" ofType:@"png"];
[request setFile:[NSURL URLWithString:filename] forKey:@"photo"];

Ok, aqui está o código que você precisa escrever para UIImagePicker
- (void) imagePickerController:(UIImagePickerController *)thePicker didFinishPickingMediaWithInfo:(NSDictionary *)imageInfo 
{
    imagePicker = nil;

    UIImage *image = [imageInfo objectForKey:@"UIImagePickerControllerEditedImage"];
    image = [image roundedCornerImage:23.5 borderSize:1];




    // Get the data for the image as a JPEG
    NSData* imageData = UIImageJPEGRepresentation(image, 0.5);

    // Give a name to the file
    NSString* imageName = @"photo.png";

    // Now, we have to find the documents directory so we can save it
    // Note that you might want to save it elsewhere, like the cache directory, or something similar.
    NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString* documentsDirectory = [paths objectAtIndex:0];

    // Now we get the full path to the file
    NSString* fullPathToFile = [documentsDirectory stringByAppendingPathComponent:imageName];
    [imageData writeToFile:fullPathToFile atomically:NO];
    myPicture = imageData;
    myPicturePath = fullPathToFile;    

    // Dismissing the image picker view
    [self dismissModalViewControllerAnimated: YES];
}

Ao fazer o upload da imagem, use este código.. Você terá o caminho myPicture definido no seletor de imagens.
Request setFile:myPicturePath forKey:@"photo"];

O código a seguir é para obter a imagem do diretório de documentos e enviá-la.
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
                NSString* documentsDirectory = [paths objectAtIndex:0];

                // Now we get the full path to the file
                NSString* fullPathToFile = [documentsDirectory stringByAppendingPathComponent:@"photo.png"];
                [imageData writeToFile:fullPathToFile atomically:NO];

                [Request setFile:fullPathToFile forKey:@"photo"];