Uploading image to server Detail Explanation for Beginner

后端 未结 3 1599
忘掉有多难
忘掉有多难 2021-01-02 14:00

I\'m working on uploading an image to a server from last two days as there are tons of questions about uploading an image through AFNetworking and NSURLSession and other met

3条回答
  •  太阳男子
    2021-01-02 14:28

    I think it's Helpful for you...

    - (void)sendImageToServer
    {
        UIImage *yourImage= [UIImage imageNamed:@"image.png"];
        NSData *imageData = UIImagePNGRepresentation(yourImage);
        NSString *base64 = [imageData base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
        NSString *strImage = [NSString stringWithFormat:@"data:image/png;base64,%@",base64];
    
        NSMutableDictionary *dic = [[NSMutableDictionary alloc] initWithObjectsAndKeys:strImage,@"image", nil];
        NSError * err;
        NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dic options:0 error:&err];
        NSString *UserProfileInRequest = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
        NSData *data=[UserProfileInRequest dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
        NSString *len = [NSString stringWithFormat:@"%ld", (unsigned long)[data length]];
    
        // Init the URLRequest
    
        NSMutableURLRequest *req = [[NSMutableURLRequest alloc] init];
        [req setURL:[NSURL URLWithString:@"http://YOUR_URL"]];
        [req setHTTPMethod:@"POST"];
        [req setValue:len forHTTPHeaderField:@"Content-Type"];
        [req setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
        [req setValue:@"application/json" forHTTPHeaderField:@"Accept"];
        [req setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
        [req setHTTPBody:data];
    
        NSURLSession *session = [NSURLSession sharedSession];
        [[session dataTaskWithRequest:req completionHandler:^(NSData *dt, NSURLResponse *response, NSError *err){
            //Response Data
            NSMutableDictionary *dic = [NSJSONSerialization JSONObjectWithData:dt options:kNilOptions error:&err];
            NSLog(@"%@", [dic description]);
    
        }]resume];
    }
    

提交回复
热议问题