2014-03-04 4 views
0

NSURLSession을 사용하여 FTP를 통해 파일을 업로드하려고하는데 허가 문제가 있습니다. 그러나 Core Foundation 프레임 워크 파일을 사용하여 업로드하는 동안 업로드하지 않지만 코드에서 제공 한 이름으로 파일이 생성되고, 심지어 권한 문제가 발생하지 않습니다. 둘 다 나는 동일한 신임장을 전달합니다. 어떤 사람이 코드를보고 싶다면 업로드하겠다고 알려주십시오. 일시 중지 및 다시 시작 기능을 추가하고 싶습니다. 그래서 저는 제가 직접 배울 수 있도록 라이브러리를 사용하지 않고 있습니다.ftp 서버로 파일을 업로드 할 때 직면 한 문제

+0

CFNetwork 프레임 워크를 사용하여 github의 SCRFTPRequest.h 및 SCRFTPRequest.m 파일을 프로젝트에 추가하여 FTP 서버에 파일을 업로드 할 수 있습니다. – Funny

+0

코드를 추가해야합니까? – Funny

+0

@Dream 물론 가능합니다. 정말 감탄할 것입니다. 감사. – Exploring

답변

1

파일을 FTP 서버에 업로드하려면 NSURLConnection을 사용할 수 없으며 대신 SCRFTPConnection이 사용됩니다. CFNetwork 프레임 워크를 포함해야합니다. 또한, 다음은 Github에서에서 다운로드 위의 zip 파일에서 Github에서에서

https://github.com/Hackmodford/SCRFTPRequest

복사 단지 .H와하는 .m 파일을 SCRFTPRequest.h 및 SCRFTPRequest.m 파일을 다운로드하여 프로젝트에 추가 할 수있는 링크입니다 .

// 당신의 뷰 컨트롤러

가져 오기 "SCRFTPRequest.h"파일의 .H 파일과 대리인을 추가,보기 컨트롤러의

//하는 .m IN FILE

-(void)uploadFileUsingSCRFTPRequest{ 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 

    NSString *file_name=[NSString stringWithFormat:@"TEST.txt"]; 
    NSString *myPathDocs = [documentsDirectory stringByAppendingPathComponent:file_name]; 

    SCRFTPRequest *ftpRequest = [[SCRFTPRequest alloc] initWithURL:[NSURL URLWithString:@"ftp://your_url/"] toUploadFile:myPathDocs]; 

    ftpRequest.username = @"username"; 
    ftpRequest.password = @"password"; 

    ftpRequest.delegate = self; 

    [ftpRequest startRequest]; 

} 

- (void)ftpRequestDidFinish:(SCRFTPRequest *)request { 
    NSLog(@"Upload finished."); 
} 

- (void)ftpRequest:(SCRFTPRequest *)request didFailWithError:(NSError *)error { 

    NSString *str=[NSString stringWithFormat:@"Upload failed: %@", [error localizedDescription]]; 
    NSLog(@"Upload failed: %@", [error localizedDescription]); 

} 
+0

도움을 주셔서 감사합니다. 내가 확인하고 알게. – Exploring