2016-08-12 114 views
0

因此,如果我在OAuth2授权授权流程中,我称之为“http://localhost:3000/oauth/authorize?response_type=code&client_id=2a514a754809f926b2c0fe4bb2f5f29adfa2684331b433f468f8fa4b8dbb20d5&redirect_uri=http%3A%2F%2Flocalhost%3A3001%2Fauth%2Ftodo%2Fcallback”这样的URL,它通常会向用户发送像下面这样的页面,要求他们“授权”,有没有办法或者跳过这一步并获取令牌,或者模拟用户在实际编程代码中通过使用某种GET调用来按下Authorize?在OAuth2授权授权流程中,如何模拟用户从浏览器中单击“授权”?

基本上我想避免用户点击“授权”,只是假设他们授权应用程序。

enter image description here

+0

你的问题缺乏一些定义。你有没有理由跳过这一步?供测试用?在黑暗中拍摄时,您总是可以用虚拟标记自己调用回调URL。但是,是否用于某种东西的令牌? –

回答

0

这取决于。

授权服务器验证请求以确保所有 必需参数均存在并且有效。如果请求有效, 授权服务器认证资源所有者并且获得 授权决定(通过要求资源拥有者或通过 通过其他方式建立批准)。

https://tools.ietf.org/html/rfc6749#section-4.1.1

如果你能控制的授权服务器的行为,那么你可以跳过这一步。然而,这一步是为了确保你的用户知道发生了什么,并且客户端访问它的资源是可以的,所以在这样做之前请理解它的含义。

如果您无法控制授权服务器的行为(例如您无法更改源代码),那么答案是否定的。

根据您的使用情况,client credentials grant可能更适合您的需求。