首页 新闻 会员 周边 捐助

关于博客园API调用问题

1
悬赏园豆:10 [待解决问题]

很疑惑这个API的调用顺序,或者说是调用逻辑。
前三个API
1 Client_Credentials授权
2.1 获取授权码
2.2 Authorization_Code授权

这三个API都是获取token的,有什么区别?
access_token 干嘛用的?
refresh_token 干嘛用的?

之后其他的API比如获取文章,API描述里面Header和body里面都没有说要附带token,那获取token有什么作用???
怎么算是授权成功?

Guozht的主页 Guozht | 初学一级 | 园豆:122
提问于:2020-09-02 23:33
< >
分享
所有回答(1)
0

这三个API都是获取token的,有什么区别?

答:授权有多种授法,Client_Credentials授权法是根据clientId和client_secret得到token。Authorization_Code授权是先访问登录界面,输入用户名和密码后得到一个Code,再根据Code得到token,正好对应步骤2.2和2.1。博客园的文档写的乱,需要稍微摸索一下,就是你先调2.2,再掉2.1就得到了Token

博客园的Client_Credentials授权模式我没用过,这种模式不需要博客园帐号和密码就能得到token,估计用这个token不能调用需要知道当前登录者身份的接口。你可以试试。Authorization_Code授权方式需要用博客园帐号和密码换code,再用这个code换token,所以token中肯定带有登录者身份信息了

如上所说。第一个是用Client_Credentials的方式获取token,后两种是用Authorization_Code方式获取token


access_token 干嘛用的?refresh_token 干嘛用的?

答:前者作为访问API的凭证,可以理解为Session类似的东西;后者是一个刷新token。如果 access_token快过期了,可以用refresh_token去请求一个新的access_token,不过我没有在博客园文档中看到相关API,可能我的理解也有问题,可以问问博客园负责人


之后其他的API比如获取文章,API描述里面Header和body里面都没有说要附带token,那获取token有什么作用???

答:放在Header里就好了,按照规范放:key是“Authorization”,value是:Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjlFMjcyMkFGM0IzRTFDNzU5RTI3NEFBRDI5NDFBNzg1MDlCMDc2RDAiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJuaWNpcnpzLUhIV2VKMHF0S1VHbmhRbXdkdEEifQ.eyJuYmYiOjE1ODkxMDE5MjIsImV4cCI6MTU4OTE4ODMyMiwiaXNzIjoiaHR0cDovL29wZW5hcGlfb2F1dGgtc2VydmVyIiwiYXVkIjpbImh0dHA6Ly9vcGVuYXBpX29hdXRoLXNlcnZlci9yZXNvdXJjZXMiLCJDbkJsb2dzQXBpIl0sImNsaWVudF9pZCI6IjBlNzJkMjQ0LTdlMjAtNDk2YS1hYWJjLTJmYTg1YzFkOTA5YyIsInN1YiI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMCIsImF1dGhfdGltZSI6MTU4Nzc5NjMzNywiaWRwIjoiY25ibG9nc19vYXV0aCIsIm5hbWUiOiJ6enkwNDcxIiwicm9sZSI6IkN1c3RvbSIsInNjb3BlIjpbIm9wZW5pZCIsInByb2ZpbGUiLCJDbkJsb2dzQXBpIl0sImFtciI6WyJhdXRob3JpemF0aW9uX2NvZGUiXX0.L1itWjtTEk551P-1nTSH4KR5aZ2N_EU1mTDv1jyeXf1fqrFuN0O4X0ifiv8WiLF3XxrJhiFaIGyXSw5HDKSZ3xZ2zXFQJKBi6L8zGSjyOo4BAfqN64jacDX0hiWY3ks4VgFyDgNOF1zAMGhXIrBObTgP7k6G2IzDD2QiAEeWNZeGuB2ALWUU1D8ObMNZDEWcFzBh4XWhoHhtfcTJUqzKibz_j4o4gz559jtoVRLfSCOEsyWc73drwz0rKbY54OigeCCf7oT0l-KFkzWzrxcU6SMkWmjEc7eVMrEUNuaZ2wnWIBz5C7JzkADsj1YXrZcBAQs3Pw6NYwOvIJ5BI0gHcA

你用POSTMan试试,把token复制进去,postman会自动给你生成这个header。博客园管理者认为你会去自己研究的,所有没有说地太细,你可以去找OAuth2的书看看

会长 | 园豆:12463 (专家六级) | 2020-09-03 09:24
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册