我正在关注Microsoft onedrive documentation授权代码流,以授予我的用户访问其onedrive文件的权限。
我获得了access_code,并使用带有access_code,client_id,clien_secret的ruby发送了一个POST请求,并将access_token作为JSON响应。
当我尝试附加此access_token,scopes,state,..以及My Redirect_url来访问Onedrive文件Picker时窗口关闭。以下是该
的示例网址 http://MY_REDIRECT_URL/onedrive#access_token=My_access_token&token_type=bearer&expires_in=3600&scope=wl.skydrive%20wl.signin&state=redirect_type%3dauth%26display%3dpage%26request_ts%3d1427963180884%26response_method%3durl%26secure_cookie%3dfalse&user_id=My_USER_ID
当我在授权令牌流中使用相同的URL时,它正确地打开文件选择器。 当我检查wl_auth cookie值时,它说
error=invalid_cookie&error_description=The%20'wl_auth'%20cookie%20has%20been%20modified%20incorrectly.%20Ensure%20that%20the%20redirect%20URI%20only%20modifies%20sub-keys%20for%20values%20received%20from%20the%20OAuth%20endpoint.&status=connected
答案 0 :(得分:0)
错误是我们需要使URL与使用授权令牌流时获得的URL相同。
此外,在创建URL时,请确保其编码和response_type值应为URL而不是COOKIE