저는 iOs 개발에 익숙하지 않으며 내 보관 용 계정을 사용하는 앱을 만들고 있습니다. & 내 App의 폴더에 파일을 수정할 수 있도록 내 앱이 자동으로 내 계정에 로그인하도록하고 싶습니다. 설명서에 로그인하려면 [[DBSession sharedSession]linkFromController:viewController];
으로 전화해야한다고 나와 있습니다. 하지만 난 단지 내 Dropbox 계정에 자동으로 로그인하기를 원하기 때문에 사용자에게 로그인 프롬프트를 보여주고 싶지 않습니다. Dropbox API 표준을 위반하지 않고 백그라운드에서 로그인 할 수있는 방법이 있습니까? 그런데 Core API를 사용하고 있습니다. 도와주세요.자동 로그인 로그인 계정없이 코어 API에 보관 용 계정
답변
Dropbox API는 각 사용자가 자신의 Dropbox 계정을 연결하여 자신의 파일과 상호 작용할 수 있도록 설계되었습니다. 그러나 기술적으로 하나의 계정에만 연결할 수 있습니다. SDK는 명시적인 지원을 제공하지 않으며 다양한 기술 및 보안상의 이유로 권장하지 않습니다.
그러나이 경로로 이동하려는 경우 인증 절차를 시작하는 대신 앱에 대한 기존 액세스 토큰을 수동으로 사용합니다. (. 그냥 예를 들어 https://www.dropbox.com/account/security을 통해 그것을 취소하지 않도록주의) 아이폰 OS 코어 SDK에서 당신은 사용해야 할 것 :
- (void)updateAccessToken:(NSString *)token accessTokenSecret:(NSString *)secret forUserId:(NSString *)userId;
다시하지만, 이것은 좋은 생각이 아니다. 이것은 클라이언트 측 응용 프로그램이므로 앱의 악의적 인 사용자는 액세스 토큰을 추출하여이를 사용하여 응용 프로그램에서 적용하려는 모든 액세스 제한을 우회 할 수 있습니다. 예를 들어, 다른 사용자가 액세스 할 수있는 악의적 인 페이로드로 콘텐츠를 추가하거나 추가 또는 대체 할 수 있습니다.
죄송합니다. 허용 된 답변을 따르지 못하고 Dropbox에서 비밀 키를 사용하지 않는 것이 좋기 때문에 Greg는 예제 코드를 제공하는 것을 매우 꺼립니다. DropboxOAuthKey는 다소 불투명 한 Dropbox iOS SDK API를 사용하지 않고 단일 Dropbox 계정에 Zip 파일을 업로드하는 등의 빠른 솔루션이 필요한 사용자에게 다음 작업을 제공합니다 (DropboxOAuthKey는 버튼을 눌러 생성하는 비밀 키입니다. 앱 콘솔) :
NSURLSessionConfiguration *sessionConfiguration = [NSURLSessionConfiguration defaultSessionConfiguration];
sessionConfiguration.HTTPAdditionalHeaders = @{
@"Authorization" : [NSString stringWithFormat:@"Bearer %@", DropboxOAuthKey],
@"Content-Type" : @"application/zip"
};
NSURLSession *defaultSession = [NSURLSession sessionWithConfiguration: sessionConfiguration delegate: self delegateQueue: [NSOperationQueue mainQueue]];
self.request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://api-content.dropbox.com/1/files_put/auto/%@?overwrite=false",fileName]]];
[self.request setCachePolicy:NSURLRequestReloadIgnoringLocalCacheData];
NSData *data = [[NSFileManager defaultManager] contentsAtPath:zippedPath];
[self.request setHTTPMethod:@"PUT"];
[self.request setHTTPBody:data];
[self.request setTimeoutInterval:1000];
NSURLSessionDataTask *doDataTask = [defaultSession dataTaskWithRequest:self.request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (!error){
NSLog(@"WORKED!!!!");
} else {
NSLog(@"ERROR: %@", error);
}
}];
[doDataTask resume];
게시 해 주셔서 감사합니다. 누구나 혼란 스러울 경우를 대비해이 샘플은 OAuth 2를 사용하는 반면, SDK와 이에 대한 대답은 OAuth 1을 사용합니다. – Greg
- 1. iOS 복수 로그인 보관 용 계정
- 2. 로그인 후 보관 용 계정 폴더를 표시하는 방법
- 3. 유성 계정 자동 로그인 패턴?
- 4. 로그인 용 사용자 계정 용 LDAP 스키마
- 5. 보관 용 계정
- 6. 보관 용 계정 파일 변경
- 7. iOS - 보관 용 파일 업로드 (사용자 로그인)
- 8. MVC3 계정 로그인 자동 추가 ReturnUrl
- 9. CakePHP 2.0 계정 활성화 후 자동 로그인
- 10. 보관 용 계정 통합 iphone
- 11. 보관 용 계정 v2 get_current_user
- 12. 보관 용 계정 및 메뉴
- 13. Android : 보관 용 계정 오류
- 14. 보관 용 계정 요청 패턴
- 15. iOS의 보관 용 계정 미리보기
- 16. Meteor 계정 프레임 워크 로그인/로그인 이벤트
- 17. Gmail API에 로그인
- 18. 유성 계정 로그인 서버
- 19. 계정 로그인 유지
- 20. JIRA 계정 로그인 난이도
- 21. 로그인 용 웹 브라우저를 호출하지 않고 보관 용 사용자 인증
- 22. PHP 포스트 자동 로그인 로그인
- 23. CAS 로그인 후 자동 로그인
- 24. 보관 용 계정 하나만 사용하도록 설정된 보관 용 앱
- 25. android 용 보관 용 계정 파일 동기화
- 26. 사용자를 보관 용 계정 로그인 페이지로 보내지 않고 프로그래밍 방식으로 공유 보관 용 링크를 가져올 수 있습니까?
- 27. 자동 로그인
- 28. 자동 로그인
- 29. XEN 코어 로그인 프로세스
- 30. 크롬 자동 로그인
어떻게이 방법을 구현할 수 있습니까? 임 미안하지만, 정말 iOS에 새로운 메신저 : ( – MetaSnarf
만약 당신이 간단한 단계를 제공 할 수 있습니다 ... 제발 진짜로 그것을해야합니다 : ( – MetaSnarf
)이 편리한 (어떤 것이기 때문에 권장하지 않습니다) 때문에 샘플 코드가 없지만 기본 프로세스 OAuth 1 액세스 토큰 키와 자신의 계정에 대한 비밀을 수동으로 한 번 가져온 다음 DBSession에서이 메서드를 호출하고 해당 액세스 토큰 키, 암호 및 계정 사용자 ID (정수)를 한 번만 제공하면됩니다. . 응용 프로그램 – Greg