要怎么通过PHP发布微博动态:附代码详解

今天主要聊聊关于如何通过PHP发布微博动态(代码详解),这里通过一些实例讲解与代码示例让大家通过直观的表现了解其中内容,相信大家能从中收获到有用的知识。

首先,肯定是注册成为开发者新浪微博开放平台

选择网站应用,填写一些基本信息

填完后在‘我的应用’中,会看到刚创建的应用信息,我们只是简单的测试一下,所以其他复杂的注册信息都不用填写,有这些就够了

很重要的一点,回调地址填写↓,回调地址是微博返回数据的地址,一定要填写完全一致

接下来,就是代码部分了:

随便创建一个页面,可以是一个a标签,或者自己找一个新浪的图标,随你喜欢

<a href='https://api.weibo.com/oauth4/authorize?client_id=2259374069&redirect_uri=http://www.huazi.com/good/login.php'>微博登录</a>

client_id 就是填写完应用信息后获得的App Key

redirect_uri 就是高级信息里面的回调地址

浏览器输入这个页面的地址,点击,会跳转到授权页面,点击授权并登陆

到回调地址页面,这是,回调地址会返回一个临时code,我们可以用code来换取token

<?php

header('content-type:text/html;charset=utf-8');

$code = $_GET['code'];  //获取code

$url = 'https://api.weibo.com/oauth4/access_token';  //获取token的地址

$client_id = '2259374069';  //App Key

$client_secret = '你的App Secret';  //App Secret

$grant_type = 'authorization_code';  //获取类型

$redirect_uri = 'http://www.huazi.com/good/login.php';  //回调地址

 

// echo $code;die;

 

 

//模拟登陆数据

  $vars['client_id'] = $client_id;

  $vars['client_secret'] = $client_secret;

  $vars['grant_type'] = $grant_type;

  $vars['code'] = $code;

  $vars['redirect_uri'] = $redirect_uri;

 

//使用CURL模拟登录信息

  $method_post = true;

  $ch =curl_init();

  $params[CURLOPT_URL www.arnex500.com] = $url;

  $params[CURLOPT_HEADER] = false;

  $params[CURLOPT_RETURNTRANSFER] = true;

  $params[CURLOPT_FOLLOWLOCATION] = true;

  $params[CURLOPT_USERAGENT] = 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0';

  $params[CURLOPT_SSL_VERIFYPEER] = false;

  $params[CURLOPT_SSL_VERIFYHOST] = false;

 

//格式化地址信息 

  $postfields = '';

  foreach ($vars as $key => $value) {

    $postfields .= urlencode($key) . '=' . urlencode($value) . '&';

  }

 

  $params[CURLOPT_POST] = true;

  $params[CURLOPT_POSTFIELDS] =$postfields;

 

  curl_setopt_array($ch, $params);

  $content = curl_exec($ch);

 

  //如果发生curl错误可以使用curl_error查看错误信息

  // var_dump(curl_error($ch));

  echo $content;

  // echo "<br>";

  // echo "<pre>";

  // print_r(json_decode($content,true));

至此,就获取到了我们需要的token信息,已经实现了新浪第三方登录

把token取出来,通过token可以操作很多东西,传不同的参数和URL就可以,我以发微博为例

<?php

header('content-type:text/html;charset=utf-8');

$url = 'https://api.weibo.com/2/statuses/update.json';

$access_token = '刚才获取的token';

$status = '我的测试微博'; //你要发的微博内容

 

//模拟登陆数据

 

  $vars['access_token'] = $access_token;

  $vars['status'] = $status;

 

  $method_post = true;

  $ch =curl_init();

  $params[CURLOPT_URL] = $url;

  $params[CURLOPT_HEADER] = false;

  $params[CURLOPT_RETURNTRANSFER] = true;

  $params[CURLOPT_FOLLOWLOCATION] = true;

  $params[CURLOPT_USERAGENT] = 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0';

  $params[CURLOPT_SSL_VERIFYPEER] = false;

  $params[CURLOPT_SSL_VERIFYHOST] = false;

  $postfields = '';

 

  foreach ($vars as $key => $value) {

    $postfields .= urlencode($key) . '=' . urlencode($value) . '&';

  }

 

  $params[CURLOPT_POST] = true;

  $params[CURLOPT_POSTFIELDS] =$postfields;

 

  curl_setopt_array($ch, $params);

  $content = curl_exec($ch);

 

  // var_dump(curl_error($ch));

  echo $content;

  echo "<br>";

  echo "<pre>";

  print_r(json_decode($content,true));

这段代码的下面一段与上面一段代码相同,确实如此,

点击浏览输入此页面地址,接下来查看你的微博,看看是不是发送成功了呢?

本文源自脚本之家

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值