我正在尝试将多个图像上传到SFTP服务器但是现在我一次只能上传一个?

时间:2017-04-06 17:40:30

标签: ios objective-c file-upload nmssh

我正在使用NMSSH从我的ios应用程序连接到SFTP服务器。我可以一次将一个图像上传到服务器。但是想一次上传多张图片。我怎样才能做到这一点。请建议。

NMSSHSession *session = [NMSSHSession connectToHost:@"host"
                                           withUsername:@"user"];
    if (session.isConnected) {
        if (!session.isAuthorized) {
            NSArray *authTypes = [session supportedAuthenticationMethods];   
        }

        NSString *privateKey = [[NSBundle mainBundle] pathForResource:@"privatekey" ofType:nil];
        [session authenticateByPublicKey:nil
                              privateKey:privateKey
                             andPassword:nil];

        if (session.isAuthorized) {
            NSLog(@"Authentication succeeded");
        }
    }

    NMSFTP *sftp = [[NMSFTP alloc] initWithSession:session];
    [sftp connect];

要求就像用户将使用相机或图像选择器拍摄多张照片,我需要在本地保存它们,一旦它们点击同步按钮,我应该将所有图像发送/上传到sftp服务器。

现在我在演示应用程序中尝试此功能,因此我没有来自相机或图像选择器的图像。为了测试我只是在我的资源中使用图像。

以下是样本: -

UIImage *image1 = [UIImage imageNamed:@"flower.jpg"];
 UIImage *image2 = [UIImage imageNamed:@"Wall.jpg"];
 UIImage *image3 = [UIImage imageNamed:@"Circle.jpg"];
 NSMutableData *data = [[NSMutableData alloc]init];
 NSMutableData *data2 = [[NSMutableData alloc]init];
 NSMutableData *data3 = [[NSMutableData alloc]init];

[data appendData:UIImagePNGRepresentation(image1)];
[data2 appendData:UIImagePNGRepresentation(image2)];
[data3 appendData:UIImagePNGRepresentation(image3)];

[sftp writeContents:data toFileAtPath:@"serverPath/image1.jpg"];
[sftp writeContents:data2 toFileAtPath:@"serverPath/image2.jpg"];
[sftp writeContents:data3 toFileAtPath:@"serverPath/image3.jpg"];
[session disconnect];

0 个答案:

没有答案