【浏览器版本】小白也能懂的 linuxdo oauth2

1. 浏览器访问

https://connect.linux.do/oauth2/authorize?client_id=hi3geJYfTotoiR5S62u3rh4W5tSeC5UG&response_type=code&redirect_uri=&state=neo

2. 点击允许之后从地址栏拿取code

3. 浏览器访问 https://connect.linux.do/ 并按键F12,粘贴此代码,并替换你刚刚获取的code,填入code变量中

var code = '请填入你的code'
var xhr = new XMLHttpRequest()
xhr.open('POST', `https://connect.linux.do/oauth2/token`, false)
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
xhr.setRequestHeader('Authorization', 'Basic aGkzZ2VKWWZUb3RvaVI1UzYydTNyaDRXNXRTZUM1VUc6Vk1QQlZvQWZPQjVvamtHWFJERXR6dkRoUkxFTkhwYU4=')
xhr.onload = function() {
    if (xhr.status === 200) {
        const res = JSON.parse(xhr.response)
        if (res && res.access_token) {
            var userXhr = new XMLHttpRequest()
            userXhr.open('GET', 'https://connect.linux.do/api/user', false)
            userXhr.setRequestHeader('Authorization', `Bearer ${res.access_token}`)
            userXhr.onload = function() {
                if (userXhr.status === 200) {
                    console.log(userXhr.response)
                }
            }
            userXhr.send()
        }
    }
}
xhr.send(`grant_type=authorization_code&code=${code}`)

4. 然后你就看到你要的了

9 个赞

常规话题软件开发

说的很好,那么问题来了,在哪粘贴代码?

这里有写

其实本地可以起个服务监听那个地址测试的

3 个赞

简单明了,不错

应该是控制台

小白让我问一下这个有啥用

同问这个是干啥的