跳转到: 导航, 搜索
(请求参数)
 
(未显示2个用户的15个中间版本)
第1行: 第1行:
==oauth2/authorize==
+
=oauth2/authorize=
OAuth2的authorize接口
+
 
 +
<div class="wiki_txtJ">
 +
OAuth2 授权第一步 authorize 接口,请求用户授权code
 +
</div>
 +
 
  
 
==URL==
 
==URL==
 +
 
https://api.weibo.com/oauth2/authorize
 
https://api.weibo.com/oauth2/authorize
 +
  
 
==HTTP请求方式==
 
==HTTP请求方式==
GET/POST
+
 
 +
GET / POST
 +
 
  
 
==请求参数==
 
==请求参数==
 +
 
{| border="1" cellspacing="0" cellpadding="0" width="100%" class="parameters" style="border-color: #CCCCCC;"
 
{| border="1" cellspacing="0" cellpadding="0" width="100%" class="parameters" style="border-color: #CCCCCC;"
 
|-
 
|-
!width="10%" style="text-align:center;font-weight:bolder;border:1px solid #cccccc"|&nbsp;
+
!width="15%" style="text-align:center;font-weight:bolder;border:1px solid #cccccc"|参数
 
!width="5%" style="text-align:center;font-weight:bolder;border:1px solid #cccccc"|必选
 
!width="5%" style="text-align:center;font-weight:bolder;border:1px solid #cccccc"|必选
 
!width="10%" style="text-align:center;font-weight:bolder;border:1px solid #cccccc"|类型及范围
 
!width="10%" style="text-align:center;font-weight:bolder;border:1px solid #cccccc"|类型及范围
!width="75%" style="text-align:center;font-weight:bolder;border:1px solid #cccccc"|说明
+
!width="70%" style="text-align:center;font-weight:bolder;border:1px solid #cccccc"|说明
{{api_args|client_id|true|string|申请应用时分配的AppKey。}}
+
{{api_args|client_id|true|string|第三方应用在微博开放平台注册的APPKEY。}}
{{api_args|redirect_uri|true|string|授权回调地址,站外应用需与设置的回调地址一致,站内应用需填写canvas page的地址。}}
+
{{api_args|redirect_uri|true|string|授权回调地址,传的值需与在开放平台网站填写的回调地址一致,设置填写位置:“我的应用>应用信息>高级信息”。}}
 
{{api_args|scope|false|string|申请scope权限所需参数,可一次申请多个scope权限,用逗号分隔。[[Scope|使用文档]] }}
 
{{api_args|scope|false|string|申请scope权限所需参数,可一次申请多个scope权限,用逗号分隔。[[Scope|使用文档]] }}
{{api_args|state|false|string|用于保持请求和回调的状态,在回调时,会在Query Parameter中回传该参数。开发者可以用这个参数验证请求有效性,也可以记录用户请求授权页前的位置。这个参数可用于防止CRSF}}
+
{{api_args|state|false|string|用于保持请求和回调的状态,在回调时,会在Query Parameter中回传该参数。开发者可以用这个参数验证请求有效性,也可以记录用户请求授权页前的位置,这个参数可用于防止跨站请求伪造(CSRF)攻击。}}
{{api_args|display|false|string|授权页面的终端类型,取值见下面的说明。}}
+
{{api_args|display|false|string|授权确认页面可适配的终端类型,取值为:default - 默认的授权确认页,适用于PC端的网页浏览器,mobile - 适配移动端的授权确认页,适用于手机浏览器场景。}}
 
{{api_args|forcelogin|false|boolean|是否强制用户重新登录,true:是,false:否。默认false。}}
 
{{api_args|forcelogin|false|boolean|是否强制用户重新登录,true:是,false:否。默认false。}}
{{api_args|language|false|string|授权页语言,缺省为中文简体版,en为英文版。英文版测试中,开发者任何意见可反馈至 @微博API}}
+
{{api_args|language|false|string|授权确认页显示的语言,缺省为中文简体版,en为英文版。}}
 
|}
 
|}
  
  
;'''display说明:'''
+
==调用示例与返回结果==
{| border="1" cellspacing="0" cellpadding="0" width="100%" class="parameters" style="border-color: #CCCCCC;"
+
 
|-
+
<div style="margin:15px 0;">
!width="20%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|参数取值
+
在浏览器内请求 oauth2/authorize 接口
!width="80%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|类型说明
+
</div>
|-
+
 
|style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|default
+
<div class="code_type">URL</div>
|style="text-align:left;padding-left:5px;border:1px solid #cccccc"|默认的授权页面,适用于web浏览器。
+
<pre class="brush:js">
|-
+
https://api.weibo.com/oauth2/authorize?client_id=123456&redirect_uri=http://www.example.com/response&response_type=code
|style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|mobile
+
</pre>
|style="text-align:left;padding-left:5px;border:1px solid #cccccc"|移动终端的授权页面,适用于支持html5的手机。
+
 
|-
+
 
|style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|wap1.2
+
<div style="margin:15px 0;">
|style="text-align:left;padding-left:5px;border:1px solid #cccccc"|wap1.2的授权页面。
+
正确的请求会在浏览器内打开一个授权确认页面,当用户同意授权后,会重定向到授权回调地址,并带上回传的数据
|-
+
</div>
|style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|wap2.0
+
 
|style="text-align:left;padding-left:5px;border:1px solid #cccccc"|wap2.0的授权页面。
+
<div class="code_type">URL</div>
|-
+
<pre class="brush:js">
|style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|apponweibo
+
http://www.example.com/response?code=CODE
|style="text-align:left;padding-left:5px;border:1px solid #cccccc"|默认的站内应用授权页,授权后不返回access_token,只刷新站内应用父框架。
+
</pre>
|}
+
 
 +
 
 +
<div style="margin:15px 0;">
 +
错误的请求会在浏览器内显示一个错误页面,错误码和报错信息都会在页面上会显示出来,可根据错误信息修改调试,大部分情况下,错误都是因为回调地址(redirect_uri 参数)不匹配引起的,对应错误码 21322,此时需要将传参中的 redirect_uri 参数与在开放平台网站填写的回调地址确保一致即可解决,设置填写位置:“我的应用>应用信息>高级信息”。
 +
</div>
 +
 
 +
 
 +
==授权成功后请求回调地址回传数据说明==
  
==返回数据==
 
 
{| border="1" cellspacing="0" cellpadding="0" width="100%" class="parameters" style="border-color: #CCCCCC;"
 
{| border="1" cellspacing="0" cellpadding="0" width="100%" class="parameters" style="border-color: #CCCCCC;"
 
|-
 
|-
!width="25%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|返回值字段
+
!width="25%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|返回字段
 
!width="15%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|字段类型
 
!width="15%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|字段类型
 
!width="60%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|字段说明
 
!width="60%" style="text-align:left;padding-left:5px;font-weight:bolder;border:1px solid #cccccc"|字段说明
{{rdes_args|code|string|用于调用access_token,接口获取授权后的access token。}}
+
{{rdes_args|code|string|用于第二步调用 access_token 接口,换取授权的 access token。}}
{{rdes_args|state|string|如果传递参数,会回传该参数。}}
+
{{rdes_args|state|string|如果请求时传递了该参数,则会在回调时回传该参数。}}
 
|}
 
|}
  
==示例==
 
<pre>
 
//请求
 
https://api.weibo.com/oauth2/authorize?client_id=123050457758183&redirect_uri=http://www.example.com/response&response_type=code
 
  
//同意授权后会重定向
 
http://www.example.com/response&code=CODE
 
</pre>
 
  
  
  
 +
{{#a:nobtns|noheading}}
 
__NOTOC__
 
__NOTOC__

2022年10月11日 (二) 15:24的最后版本

oauth2/authorize

OAuth2 授权第一步 authorize 接口,请求用户授权code


URL

https://api.weibo.com/oauth2/authorize


HTTP请求方式

GET / POST


请求参数

参数 必选 类型及范围 说明
client_id true string 第三方应用在微博开放平台注册的APPKEY。
redirect_uri true string 授权回调地址,传的值需与在开放平台网站填写的回调地址一致,设置填写位置:“我的应用>应用信息>高级信息”。
scope false string 申请scope权限所需参数,可一次申请多个scope权限,用逗号分隔。使用文档
state false string 用于保持请求和回调的状态,在回调时,会在Query Parameter中回传该参数。开发者可以用这个参数验证请求有效性,也可以记录用户请求授权页前的位置,这个参数可用于防止跨站请求伪造(CSRF)攻击。
display false string 授权确认页面可适配的终端类型,取值为:default - 默认的授权确认页,适用于PC端的网页浏览器,mobile - 适配移动端的授权确认页,适用于手机浏览器场景。
forcelogin false boolean 是否强制用户重新登录,true:是,false:否。默认false。
language false string 授权确认页显示的语言,缺省为中文简体版,en为英文版。


调用示例与返回结果

在浏览器内请求 oauth2/authorize 接口

URL
https://api.weibo.com/oauth2/authorize?client_id=123456&redirect_uri=http://www.example.com/response&response_type=code


正确的请求会在浏览器内打开一个授权确认页面,当用户同意授权后,会重定向到授权回调地址,并带上回传的数据

URL
http://www.example.com/response?code=CODE


错误的请求会在浏览器内显示一个错误页面,错误码和报错信息都会在页面上会显示出来,可根据错误信息修改调试,大部分情况下,错误都是因为回调地址(redirect_uri 参数)不匹配引起的,对应错误码 21322,此时需要将传参中的 redirect_uri 参数与在开放平台网站填写的回调地址确保一致即可解决,设置填写位置:“我的应用>应用信息>高级信息”。


授权成功后请求回调地址回传数据说明

返回字段 字段类型 字段说明
code string 用于第二步调用 access_token 接口,换取授权的 access token。
state string 如果请求时传递了该参数,则会在回调时回传该参数。




文档更新时间: 2022-10-11