我使用OneDrive Live sdk 5.6进行api通话。要创建新的LiveConnectClient,他的构造函数需要一个会话。要创建此会话,我们需要一个授权代码,该代码是在用户接受与onedrive应用程序共享其信息后生成的。 问题是来自onedrive的任何方法都需要一个客户端(方法=下载,上传,获取用户信息等)。 我想要的只是存储访问令牌/刷新令牌以创建LiveConnectClient,然后调用所有其他方法。 可以这样做吗?
为什么我们需要访问令牌,如果它没有被使用?
我的代码是:
LiveAuthClient AuthClient new LiveAuthClient(clientIdFromOneDriveApp);
//create session based on authentication code from web browser uri
LiveConnectSession session = AuthClient.ExchangeAuthCodeAsync(new AuthResult(uriFromWebBrowser).AuthorizeCode).Result;
//store access token
string accessToken = session.AccessToken;
//create live client based on session
LiveConnectClientliveConnectClient = new LiveConnectClient(session);
创建文件夹方法:
Dictionary<string, object> folderData = new Dictionary<string, object>();
folderData.Add("name", newFolderName);
LiveOperationResult operationResult = webBrowserWindow.liveConnectClient.PostAsync(uploadPath, folderData).Result;
因此,我唯一需要的是LiveConnectClient来创建文件夹。我不需要访问令牌。