當前位置:首頁 >  站長 >  編程技術(shù) >  正文

基于PHP實現(xiàn)發(fā)微博動態(tài)代碼實例

 2020-12-14 14:24  來源: 腳本之家   我來投稿 撤稿糾錯

  域名預訂/競價,好“米”不錯過

這篇文章主要介紹了基于PHP實現(xiàn)發(fā)微博動態(tài)代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

首先,肯定是注冊成為開發(fā)者新浪微博開放平臺

選擇網(wǎng)站應用,填寫一些基本信息

填完后在‘我的應用'中,會看到剛創(chuàng)建的應用信息,我們只是簡單的測試一下,所以其他復雜的注冊信息都不用填寫,有這些就夠了

很重要的一點,回調(diào)地址填寫↓,回調(diào)地址是微博返回數(shù)據(jù)的地址,一定要填寫完全一致

接下來,就是代碼部分了:

隨便創(chuàng)建一個頁面,可以是一個a標簽,或者自己找一個新浪的圖標,隨你喜歡

<a >微博登錄</a>

client_id 就是填寫完應用信息后獲得的App Key

redirect_uri 就是高級信息里面的回調(diào)地址

瀏覽器輸入這個頁面的地址,點擊,會跳轉(zhuǎn)到授權(quán)頁面,點擊授權(quán)并登陸

到回調(diào)地址頁面,這是,回調(diào)地址會返回一個臨時code,我們可以用code來換取token

<?php
header('content-type:text/html;charset=utf-8');
$code = $_GET['code'];  //獲取code
$url = 'https://api.weibo.com/oauth2/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';  //回調(diào)地址
 
// echo $code;die;
 
 
//模擬登陸數(shù)據(jù)
  $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] = $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);
 
  //如果發(fā)生curl錯誤可以使用curl_error查看錯誤信息
  // var_dump(curl_error($ch));
  echo $content;
  // echo "<br>";
  // echo "<pre>";
  // print_r(json_decode($content,true));

至此,就獲取到了我們需要的token信息,已經(jīng)實現(xiàn)了新浪第三方登錄

把token取出來,通過token可以操作很多東西,傳不同的參數(shù)和URL就可以,我以發(fā)微博為例

<?php
header('content-type:text/html;charset=utf-8');
$url = 'https://api.weibo.com/2/statuses/update.json';
$access_token = '剛才獲取的token';
$status = '我的測試微博'; //你要發(fā)的微博內(nèi)容
 
//模擬登陸數(shù)據(jù)
 
  $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));

我們發(fā)現(xiàn),這段代碼下面的部分跟上段代碼一樣,沒錯,就是這樣的

在瀏覽起輸入這個頁面的地址,再去看看你的微博,是不是成功發(fā)了一條微博?

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

來源:腳本之家

鏈接:https://www.jb51.net/article/201960.htm

申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!

相關(guān)標簽
php教程

相關(guān)文章

熱門排行

信息推薦