• 用户名_密码获取Access_Token


     http://www.ivanjevremovic.in.rs/live/domination/red/index-async-slider.html

    http://designova.net/reveal/preview/index-bgvideo.html#filter=.portfolio

    http://web-vogue.com/themes/Titanium/blue/

    http://byandby.iteye.com/blog/816101

    使用用户名_密码获取Access_Token

    简介

    采用Resource Owner Password Credentials方式,即用户名、密码方式获取Access Token,适用于任何类型应用,但由于涉及将开心网用户的密码泄露给第三方应用,因此为保证开心网用户账号的安全性,本模式只会对与开心网合作极为紧密的合作方开放,且只对手机客户端类型的应用开放。开发者需要提前发邮件至app@corp.kaixin001.com申请,审核通过后方能使用。其流程示意图如下:


                   图3:用户名、密码流程

    对于应用而言,其流程只有一步,即直接获取Access Token。

    使用开心账号获取Access Token

     

    1. 请求数据包格式

    通过用户名、密码获取Access Token需要应用在其服务端发送请求(推荐用POST方法)到开心网OAuth2.0授权服务的“https://api.kaixin001.com/oauth2/access_token”地址上,并带上以下参数:

    参数名 必选 介绍
    grant_type true 固定为“password”
    username true 开心网用户的用户名
    password true 开心网用户的密码
    client_id true 应用的API Key
    client_secret true 应用的Secret Key
    scope flase 以空格分隔的权限列表,若不传递此参数,代表请求默认的basic权限。
    如需调用扩展权限,必需传递此参数,详细请参考权限列表

    例如:

    https://api.kaixin001.com/oauth2/access_token?
    grant_type=password&
    username=json001&
    password=111111&
    client_id=Va5yQRHlA4Fq4eR3LT0vuXV4&
    client_secret=0rDSjzQ20XUj5itV7WRtznPQSzr5pVw2&
    scope=basic

    2. 响应数据包格式

    若参数无误,服务器将返回一段JSON文本,包含以下参数:

    参数名 介绍
    access_token 要获取的Access Token
    expires_in Access Token的有效期,以秒为单位
    refresh_token 用于刷新Access Token 的 Refresh Token,并不是所有应用都会返回该参数
    scope Access Token最终的访问范围,即用户实际授予的权限列表(用户在授权页面时,
    有可能会取消掉某些请求的权限)

    例如:

    HTTP/1.1 200 OK
    Content-Type: application/json
    Cache-Control: no-store
    { 
        "access_token": "12932845_de81cfe747ad7e06f2a904e73646f04c",
        "expires_in": 2592000,
        "refresh_token": "12932845_a11e9e819933a8021291711510e011e8",
        "scope": "basic",
    }

    若请求错误,服务器将返回一段JSON文本,包含以下参数:

    例如:

    HTTP/1.1 400 Bad Request
    Content-Type: application/json
    Cache-Control: no-store
    {
        "error_code":"400",
        "request":"/oauth2/access_token",
        "error":"40021:Error: 请求的scope参数是无效的、未知的、格式不正确的"
    }

    使用腾讯token获取Access Token

    使用腾讯开放平台的token换取开心access_token,需要把腾讯开放平台的tencent_token、expire、openid发送到https://api.kaixin001.com/oauth2/access_token

    1. 请求数据包格式

    参数名 必选 介绍
    grant_type true 固定为“password”
    tencent_token true 从腾讯开放平台获取的token
    expire true token的有效期
    openid true 从腾讯开放平台获取的openid
    client_id true 应用的API Key
    client_secret true 应用的Secret Key
    scope flase 以空格分隔的权限列表,若不传递此参数,代表请求默认的basic权限。
    如需调用扩展权限,必需传递此参数,详细请参考权限列表

    2. 响应数据包格式

    若已绑定开心账号,服务器将返回一段JSON文本,包含以下参数:

    参数名 介绍
    access_token 要获取的Access Token
    expires_in Access Token的有效期,以秒为单位
    refresh_token 用于刷新Access Token 的 Refresh Token,并不是所有应用都会返回该参数
    scope Access Token最终的访问范围,即用户实际授予的权限列表(用户在授权页面时,
    有可能会取消掉某些请求的权限)

    例如:

    HTTP/1.1 200 OK
    Content-Type: application/json
    Cache-Control: no-store
    { 
        "access_token": "12932845_de81cfe747ad7e06f2a904e73646f04c",
        "expires_in": 2592000,
        "refresh_token": "12932845_a11e9e819933a8021291711510e011e8",
        "scope": "basic",
    }

    若未绑定开心账号,服务器将返回一段JSON文本,包含以下参数:

    参数名 介绍
    need_bind 为1表示需要绑定
    bind_url 跳转到wap绑定页面的URL

    例如:

    HTTP/1.1 400 Bad Request
    Content-Type: application/json
    Cache-Control: no-store
    {
        "need_bind": 1,
        "bind_url": "http://wap.kaixin001.com/qq_bind.php?at=xxxxx&exp=11111111&openid=2222222&from=client",
    }

    使用微博uid获取Access Token

    使用微博开放平台的token换取开心access_token,需要把微博开放平台的indentity_id发送到https://api.kaixin001.com/oauth2/access_token

    1. 请求数据包格式

    参数名 必选 介绍
    grant_type true 固定为“password”
    weibo_uid true 微博开放平台的indentity_id
    client_id true 应用的API Key
    client_secret true 应用的Secret Key
    scope flase 以空格分隔的权限列表,若不传递此参数,代表请求默认的basic权限。
    如需调用扩展权限,必需传递此参数,详细请参考权限列表

    2. 响应数据包格式

    若已绑定开心账号,服务器将返回一段JSON文本,包含以下参数:

    参数名 介绍
    access_token 要获取的Access Token
    expires_in Access Token的有效期,以秒为单位
    refresh_token 用于刷新Access Token 的 Refresh Token,并不是所有应用都会返回该参数
    scope Access Token最终的访问范围,即用户实际授予的权限列表(用户在授权页面时,
    有可能会取消掉某些请求的权限)

    例如:

    HTTP/1.1 200 OK
    Content-Type: application/json
    Cache-Control: no-store
    { 
        "access_token": "12932845_de81cfe747ad7e06f2a904e73646f04c",
        "expires_in": 2592000,
        "refresh_token": "12932845_a11e9e819933a8021291711510e011e8",
        "scope": "basic",
    }
  • 相关阅读:
    C# 安装包中添加卸载
    如何提取json里面的数据
    JSON写入
    在Net下处理Json
    Linq To Json
    衡量视频序列特性的TI(时间信息)和SI(空间信息)
    DotCMS安装步骤
    【12c OCP】最新CUUG OCP071考试题库(52题)
    【ocp12c】最新Oracle OCP071考试题库(44题)
    【Oracle 12c】最新CUUG OCP071考试题库(53题)
  • 原文地址:https://www.cnblogs.com/fx2008/p/3288753.html
Copyright © 2020-2023  润新知