2012-12-21 1 views
5

iOS에서 Dropbox API를 사용하려고하지만 loadMetadata 메소드를 사용하려고하면 오류가 발생합니다. 처리 흐름은 아래와 같다사용자를 변경 한 후에 iOS Dropbox API가 "MPOAuthConnection에서 현재 지원되지 않음"이 발생합니다.

..


1.link (사용자 A)

보관 인증 뷰

3.unlink (사용자 A)에

[[DBSession sharedSession] linkFromController:self]; 

2.allow 승인

[[DBSession sharedSession] unlinkAll]; 

4. 링크 보관 용 인증보기에 사용자 B)

[[DBSession sharedSession] linkFromController:self]; 

5.allow 인증

6.loadMetadata

[[self restClient] loadMetadata:path]; 

그러나 여기에서 나는 오류 얻을 :

Terminating app due to uncaught exception 'Unsupported Signature Method', reason: 
'The signature method "(null)" is not currently support by MPOAuthConnection' 

loadMetaData 짓을 일하다 곧바로 UserA으로 표시되지만 사용자를 변경 한 후에 작동하지 않습니다.

내가 unlink에가는 길은 의심 스럽다. 그러나 나는 모른다.

문제를 해결하기 위해 조언 해주세요. 어떤 도움을 주시면 감사하겠습니다. @yusaku 자신의 질문에 대한 댓글에 게시 된

+1

나는 이것으로 해결해야한다> https://forums.dropbox.com/topic.php?id=94511#post-517526 – zono

답변

5

구체적를, 그렉 K.는 말합니다 :

Make sure you clear all your DBRestClient objects when you unlink. If you try to use an old DBRestClient object it will cause this problem.

생각할 필요가 없어야합니다 이전 DBRestClient 지우기

하지만 늦게 당신이 그것을 영속 클래스 변수하게 샘플 코드를 다음과 같은 때, 그것은 뇌 또는 두 가지를 건너 뛸 쉽습니다.

+1

위의 드롭 박스 포럼 링크는 모두 죽었지 만 Mr. Fire의 대답은 정확하다 - 실제 문제는 일단 DBRestClient를 초기화하면 수명이 다할 때까지 인증을 위해 동일한 사용자 ID를 계속 사용하려고 시도한다는 것입니다. 해당 사용자의 연결을 해제하면 다른 사용자를 추가 한 경우에도 해당 사용자의 자격 증명이 없어 API 호출 인증에 실패합니다. 새로운 사용자로 전환 할 때 새 DBRestClient를 만드는 것이 수정되었습니다. – amergin