VK Oauth:安全错误
我正在尝试授权我的独立应用程序。但在我单击“允许”后,它总是重定向到VK Oauth:安全错误,oauth,oauth-2.0,vk,Oauth,Oauth 2.0,Vk,我正在尝试授权我的独立应用程序。但在我单击“允许”后,它总是重定向到http://oauth.vk.com/error?err=2并将其作为响应正文给出: {"error":"invalid_request", "error_description":"Security Error"} 这是请求URL(我确实有正确的客户端id): 看来我什么都试过了: 打开和关闭应用程序 将范围作为位掩码传递 URI对某些参数进行编码以获得正确的URL 等等 经过一个小时的搜索,我找到了 所以,这意味着用户
http://oauth.vk.com/error?err=2
并将其作为响应正文给出:
{"error":"invalid_request", "error_description":"Security Error"}
这是请求URL(我确实有正确的客户端id
):
看来我什么都试过了:
- 打开和关闭应用程序
- 将
作为位掩码传递范围
- URI对某些参数进行编码以获得正确的URL
- 等等
- 经过一个小时的搜索,我找到了
所以,这意味着用户有一个旧会话,必须在浏览器中重新登录。状态中的空格参数导致了这一点 ,节和,建议使用
状态
参数来维护授权代码流中的状态,特别是防止CSRF
当我将此字段设置为CSRFTOKEN123时http://my.site/next/url
,我收到了这个错误。将
(空格)替换为:
以获取CSRFTOKEN123:http://my.site/next/url
帮助
顺便说一下,我在VK文档网站上找不到任何关于state
参数的提及,但VK OAuth 2授权系统实际上支持它。否则就不能称之为OAuth 2。所以我发现使用state
参数是合法的
作者提到的话题现在已经结束了,现在的讨论已经结束。有。都是俄语。谢谢,伙计,我很沮丧:)谢谢,大约一年来,我没有重新登录,也没有看到这个错误。我从没想过这会有帮助。
https://oauth.vk.com/authorize?client_id=...&scope=messages,offline&redirect_uri=https://oauth.vk.com/blank.html&display=page&v=5.37&response_type=token