• OAuth2.0协议之新浪微博接口演示


    新浪微博接口调用数据代码:

    <?php
    /**
    * @ Author : LiBo
    * @ Date : 2013-10-25
    * @ File : weiboapi.php
    * 
    * @ 说明:回调页面http://pressure.manyi.cc/weibo/ok.php中,
    *       仅做session保存code的值即可。
    **/
    
    /**
     * 开启session,因为授权请求返回的code每次都会变化,而获取access_token是需要传递code的值,
     * 所以需要用session来存储code的值。
     */
    session_start();
    
    /**
     * 过程1:引导需要授权的用户到如下地址:
     * https://api.weibo.com/oauth2/authorize
     * ?client_id=YOUR_CLIENT_ID
     * &response_type=code
     * &redirect_uri=YOUR_REGISTERED_REDIRECT_URI
     * 
     * 需要用GET方式请求即可返回code,
     * 返回的code从url中获取,如下:
     * http://pressure.manyi.cc/weibo/ok.php
     * ?code=0da62e01a1e143083d3cb98fe6570fb3
     */
    echo '<a href="https://api.weibo.com/oauth2/authorize?client_id=2914160891&response_type=code&redirect_uri=http://pressure.manyi.cc/weibo/ok.php">a</a>';
    
    //取session中的code
    $code = $_SESSION['code'];
    
    /**
     * 过程2:换取Access Token
     * https://api.weibo.com/oauth2/access_token
     * ?client_id=YOUR_CLIENT_ID
     * &client_secret=YOUR_CLIENT_SECRET
     * &grant_type=authorization_code
     * &redirect_uri=YOUR_REGISTERED_REDIRECT_URI
     * &code=CODE
     * 
     * 必须用POST请求,否则出错!
     */
    echo '<form action="https://api.weibo.com/oauth2/access_token
            ?client_id=2914160891
            &client_secret=0c37ed3a3d78b6cec595826c465fc2c9
            &grant_type=authorization_code
            &redirect_uri=http://pressure.manyi.cc/weibo/ok.php
            &code='.$code.'" method="POST">
        <input type="submit" name="access" value="access_token">
        </form>';
    
    /**
     *因为access_token不会在每次请求的时候改变,
     *所以这里放到一个变量里即可。
     *注意:code是每次请求都会改变,而access_token是一个有固定有效期的值,
     *    当过了这个有效期,则需要重新授权
     */
    $access_token = "2.008_chgBB4WNLDa5203e0e92um15ZD";
         
    echo '<form action="https://api.weibo.com/2/statuses/public_timeline.json" method="GET">
            <input type="text" name="access_token" value="'.$access_token.'">
            <input type="submit" name="access" value="access_token">
        </form>';
    var_dump($_REQUEST);
    ?>
  • 相关阅读:
    ibatis 中isNull, isNotNull与isEmpty, isNotEmpty区别
    关于异常Microsoft.CSharp.RuntimeBinder.RuntimeBinderException
    php 利用fsockopen GET/POST 提交表单及上传文件
    php发送get、post请求获取内容的几种方法
    修改WampServer的默认端口
    SQL Server2008附加数据库之后显示为只读时解决方法
    Linux一键安装web环境全攻略(阿里云服务器)
    如何从Windows远程上传文件到Linux(例如CentOS 7)
    在CentOS上搭建PHP服务器环境
    linux(系统centos6.5)常用命令总结
  • 原文地址:https://www.cnblogs.com/thinksasa/p/3387876.html
Copyright © 2020-2023  润新知