2015-01-12 6 views
0

닷 넷 MVC를 처음 사용하고 사용자가 oauth2 인증 흐름을 사용하여 응용 프로그램을 인증하는 상자 통합이 필요한 응용 프로그램에서 작업하고 있습니다. 사용자가 응용 프로그램을 다시 인증 할 필요가 없도록 추가 토큰 액세스 토큰과 새로 고침 토큰을 가져와 내 데이터베이스에 저장합니다.상자에서 새로 고침 토큰을 얻는 방법 Windows SDK v2

이제 Box Windows SDK v2를 사용하여 사용자의 파일 및 폴더 목록을 가져옵니다. 다음은 상자의 썩은 폴더를 가져올 수있는 코드 블록입니다.

var config = new BoxConfig(clientId, clientSecret, new Uri("http://localhost:49671/CloudBox/Callback/")); 
//Pls note, here accessToken and refreshToken are fetched from database 
OAuthSession session = new OAuthSession(accessToken, refreshToken, 3600, "bearer"); 
BoxClient client = new BoxClient(config, session); 
BoxFolder boxFolder = client.FoldersManager.GetInformationAsync("0").Result; 

이 시점까지는 문제가 없습니다.

이제 액세스 토큰이 만료 될 때 (3600 초 동안 만 유효) 루트 폴더를 다시 가져 오려고하면 상자 SDK가 액세스 토큰을 새로 고치고 토큰을 자동으로 새로 고칩니다. 루트 폴더 개체를 제공합니다.

현재 루트 폴더가 있지만 상자 SDK가 액세스 토큰과 새로 고침 토큰을 업데이트 한 것을 알지 못합니다. 여전히 데이터베이스에 오래된 액세스 토큰과 새로 고침 토큰이 있습니다. 그들은 업데이트되지 않습니다. 그리고 나는 길을 잃었다. 이제 그 오래된 무효화 된 액세스 토큰과 새로 고침 토큰이 남아 있습니다.

Pls 도움. Box SDK가 액세스 토큰과 새로 고침 토큰을 업데이트했다는 것을 어떻게 알 수 있습니까? 나중에 사용할 수 있도록 데이터베이스에서 업데이트 할 수 있습니다.

액세스 토큰 및 새로 고침 토큰을 저장하는 작동하는 샘플 MVC 응용 프로그램을 제공 할 수 있다면 좋을 것입니다. 컨트롤러에 배치해야하는 코드 블록을 제공 할 수 있습니다. 나는 그것들을 통합 할 수 있기를 희망한다.

미리 감사드립니다.

답변

0

아마도이 샘플이 도움이 될 것입니다. 이 문서에서는 새로 고침 토큰을 60 일 동안 지속 것을 보여줍니다 A Simple Box.Com C# API Wrapper

0
당신은 토큰 새로 고침 후 Box.V2에 의해 트리거 이벤트를 사용할 수

:

SessionAuthenticated : 화재는 새로운 인증 토큰의 세트와 토큰 쌍을 새로 고침 가 반입되었습니다.

SessionInvalidated : 인증 세션이 무효화되면 실행됩니다.