新浪微博OAuth 2.0接口简单实例例
来源:互联网 发布:战舰世界 青叶 数据 编辑:程序博客网 时间:2024/05/01 02:57
这几天一直在搞腾讯和新浪的开放平台~~整的快晕了~~两家基本差不多,整出来一小块放出来大家看看。
有意探讨的可邮件jackqn@126.com或者在下面留言~~
sina.html
<html lang="zh-cn">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>
</title>
<script type="text/javascript">
var childWindow;
function toQzoneLogin()
{
childWindow = window.open("sina_rge.php","TencentLogin","width=450,height=320,menubar=0,scrollbars=1, resizable=1,status=1,titlebar=0,toolbar=0,location=1");
}
function closeChildWindow()
{
childWindow.close();
}
</script>
</head>
<body>
<br><br>
<a href="#" onclick='toQzoneLogin()'>登录新浪</a>
<br><br>
</body>
</html>
sina_rge.php
<?php
require_once("sinalib/utils.php");
mysql_close($conn);
function redirect_to_login($appid, $callback)
{
echo $appid;
$redirect = "https://api.weibo.com/oauth2/authorize"."?response_type=code&client_id=$appid&redirect_uri=".$callback;
header("Location:$redirect");
}
redirect_to_login($sinaappid,"返回地址");
?>
sinaacc.php
<?php
require_once("sinalib/utils.php");
function redirect_to_acc($appid,$secret,$code,$callback){
$url="https://api.weibo.com/oauth2/access_token";
$data="client_id=$appid&client_secret=$secret&code=$code&grant_type=authorization_code&redirect_uri=".rawurlencode($callback);
$access=do_call($url,$data);
$arr=json_decode($access,true);
print_r($arr);
$access_token=$arr['access_token'];
echo $access_token."新浪授权成功,每次授权可用24小时,超出时限请重新授权";
}
redirect_to_acc($sinaappid,$sinaappkey,$_GET['code'], "返回地址");
?>
sinalib/utils.php
error_reporting(E_ALL || ~E_NOTICE);
$sinaappid=“申请到的appid”;
$sinaappkey="申请到的key";
function do_post($url, $postdata){
//http
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_URL, $url);
$ret =curl_exec($ch);
curl_close($ch);
return $ret;
}
function do_call($url, $postdata)
{
//https
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_URL, $url);
$ret =curl_exec($ch);
curl_close($ch);
return $ret;
}
function get_arr($data){
$arr = array();
$tem=substr($data,strpos($data,'{'),$data.len-3);
$arr=json_decode($tem,true);
return $arr;
}
function getMyuri(){
//获取当前目录
$baseUrl = str_replace('\\','/',dirname($_SERVER['SCRIPT_NAME']));
$baseUrl = empty($baseUrl) ? '/' : '/'.trim($baseUrl,'/').'/';
return $baseUrl;
}
?>
- 新浪微博OAuth 2.0接口简单实例例
- 新浪微博OAuth接口实现登录 java版
- 新浪微博开放平台 PHP 与 OAuth 接口
- 最通俗简单的新浪微博OAuth认证实现
- 最通俗简单的新浪微博OAuth认证实现
- 新浪微博OAUTH方法
- 新浪微博 oAuth 解决方案
- 新浪微博Oauth认证
- 新浪微博OAuth认证
- 新浪微博OAuth认证
- OAuth授权详解,以新浪微博为例
- 实现了新浪、腾讯、网易、搜狐四大微博的统一OAuth认证、调用接口。
- 新浪微博简单搜索接口
- 新浪微博OAUTH方法-iPhone
- 新浪微博开发OAuth授权注意事项
- 新浪微博的Oauth认证过程
- 新浪微博OAuth 认证详解
- 如何实现新浪微博OAuth认证
- 文本偏移
- 设备管理器打不开——简单易行
- RandomAccessFile(转)
- 使用InetAddress 获取主机名注意!!!
- Android 特殊字符转义
- 新浪微博OAuth 2.0接口简单实例例
- 非功能性需求
- WPF中动态改变控件显示位置
- 视频测试序列的下载地址 转自:http://blog.sina.com.cn/s/blog_5fd6a0e50100dn0k.html
- nfs配置
- Java中StringBuilder的清空方法比较
- 在VB图像处理中BMP位图的详细说明
- OpenNMS全接触-事件及通知(十)
- LinuxShell编程