백엔드 개발 PHP 튜토리얼 新浪微博API开发简介之用户授权(PHP基础篇)_php实例

新浪微博API开发简介之用户授权(PHP基础篇)_php实例

Jun 07, 2016 pm 05:25 PM
API 개발 시나 웨이보

现在玩微博的人越来越多了,而关于微博的第三方应用开发也越来越多,自己在偶然间开始接触了新浪微博API开发,新浪微博API开发的资源比较多,新浪微博提供了一个开发者的平台,网址是:http://open.weibo.com,它里面有很全面的新浪微博开发的资料,包括开发者的使用和介绍,各种语言的API函数介绍文档,SDK等多种资料。

自己在开发和学习的过程中,感觉虽然没有太大难度,但还是有一些问题是需要我们注意的,今天就我在开发和学习的过程中,简单的对利用PHP进行新浪微博API开发的内容进行一个整理和说明,

新浪微博API开发前的准备工作

首先到新浪微博开放平台下载基于PHP的SDK开发包,下载地址是:http://code.google.com/p/libweibo/downloads/detail?name=weibo-oauth-class-with-image-avatar-06-29.zip

下载完成后放到自己的开发环境中并解压,在其中也包含了demo演示程序,我们可以参考其样例程序进行编写。

新浪微博API开发最重要的用户授权过程

其实在开发过程中很多的问题都是集中在用户授权这个阶段,我开发的第三方应用,使用的是OAuth授权,关于OAuth授权的流程在新浪微博开放平台里有很清晰完整的介绍,我们可以到http://open.weibo.com/wiki/Oauth去查看,我这里从实例开发的角度进行介绍和说明。

1.首先获取未授权的Request Token

复制代码 代码如下:

$o = new WeiboOAuth( WB_AKEY , WB_SKEY );
$keys = $o->getRequestToken();
//echo($keys['oauth_token'].' : '.$keys['oauth_token_secret']);

我们需要在新浪微博开放平台中注册一个帐号,或直接使用我们的新浪微博帐号登录,进入我的应用,然后按照提示创建属于我们自己的第三方应用,创建完成之后我们可以得到两个授权的App Key和App Secret值,这两个值就是我们开发应用的关键。
得到授权值后,我们就可以利用上面的代码获得未授权的Request Token值了,它们会保存在$key数组变量中。
2.然后请求用户授权Token
复制代码 代码如下:

$_SESSION['keys'] = $keys;
aurl = $o->getAuthorizeURL( $keys['oauth_token'] ,false , 'http://localhost/callback.php');

得到未授权的Request Token值后,我们就利用上面的代码可以开始准备去新浪微博授权页面进行授权,$aurl就是授权链接页面,我们得到$aurl后就可以利用header()直接跳转到该授权页面,然后用户输入新浪微博帐号和密码进行授权,授权完成后,自动跳回你在最后一个参数里面设置的回调页面:http://localhost/callback.php,该链接你可以设置为上一个页面,这样授权完成之后就会自动又跳转回去了。
需要注意的是设置session的keys的值是必须的,它在下面获取到授权的Access Token中是需要用到的。很多的朋友可能会参考其开放平台上面的说明来进行授权时,可发现总是出错,一般都是这个问题,你并未设置session的keys值,在下面当然取不到Access Token的值了,这个一定要记住了。
3.最后得到用户授权的Access Token
复制代码 代码如下:

$o = new WeiboOAuth( WB_AKEY ,
WB_SKEY ,
$_SESSION['keys']['oauth_token'] ,
$_SESSION['keys']['oauth_token_secret'] );
$last_key = $o->getAccessToken( $_REQUEST['oauth_verifier'] ) ;
echo($last_key['oauth_token']);

上面的代码就最终获得了用户授权的Access Token,共两个值,它们保存在$last_key数组变量里面,我们也可以看到,后面的两个参数就是前面我们设置的session值。到此就基本完成了,这就是新浪微博用户授权的一个完整的过程。
授权完成后的工作
在授权完成之后,我们就可以开始调用新浪微博提供的各类API函数接口进行实际应用的开发了,在这里我就获取最新微博记录这个接口进行一个简单说明,其他都类似。
获取最新新浪微博信息的API接口函数是:public_timeline(),样例代码看下面:
复制代码 代码如下:

//获取前20条最新更新的公共微博消息
$c = new WeiboClient( WB_AKEY ,
WB_SKEY ,
$oauth_token ,
$oauth_token_secret );
$msg = $c->public_timeline();
if ($msg === false || $msg === null){
echo "Error occured";
return false;
}
if (isset($msg['error_code']) && isset($msg['error'])){
echo ('Error_code: '.$msg['error_code'].'; Error: '.$msg['error'] );
return false;
}
print_r($msg);

通常我们在得到用户授权的Access Token值之后,就把它们保存在我们的用户表中,与我们的应用中的帐号进行对应,之后我们在调用新浪微博各api接口时就不用每次都去认证了。
上面的代码很简单,实例化WeiboClient对象,然后直接调用接口函数public_timeline就可以得到返回的信息,如果没有错误的话。通常新浪微博api接口返回的数据格式一般为Json格式或xml格式,而我们在此是用php进行开发,则使用Json格式的数据就有先天的优势,如果返回Json格式数据的话,直接使用php函数json_decode()就可以转换为php常用的array数组格式了。
来源:红心草博客
原文地址:http://www.hongxincao.com/archives/579.html
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

PHP 백엔드 API 개발에서 병렬 및 비동기 요청을 처리하는 방법 PHP 백엔드 API 개발에서 병렬 및 비동기 요청을 처리하는 방법 Jun 17, 2023 pm 04:22 PM

웹 애플리케이션이 계속 개발되고 변화함에 따라 병렬 및 비동기 요청 처리는 PHP 백엔드 API 개발에서 중요한 주제가 되었습니다. 기존 PHP 애플리케이션에서는 요청이 동기식으로 수행됩니다. 즉, 요청은 응답이 수신될 때까지 대기하며 이는 애플리케이션의 응답 속도와 성능에 영향을 미칩니다. 그러나 이제 PHP에는 병렬 및 비동기 요청을 처리할 수 있는 기능이 있습니다. 이러한 기능을 통해 많은 수의 동시 요청을 더 잘 처리하고 애플리케이션의 응답 속도와 성능을 향상시킬 수 있습니다. 이 기사에서는 PHP 백엔드 API 개발을 처리하는 방법에 대해 설명합니다.

Java API 개발의 비동기 처리 솔루션 Java API 개발의 비동기 처리 솔루션 Jun 18, 2023 am 10:11 AM

Java 기술의 지속적인 개발로 인해 Java API는 많은 기업에서 개발하는 주류 솔루션 중 하나가 되었습니다. Java API 개발 과정에서 많은 수의 요청과 데이터를 처리해야 하는 경우가 많지만 기존의 동기식 처리 방법은 높은 동시성 및 높은 처리량 요구 사항을 충족할 수 없습니다. 따라서 비동기 처리는 Java API 개발에서 중요한 솔루션 중 하나가 되었습니다. 이 기사에서는 Java API 개발에 일반적으로 사용되는 비동기 처리 솔루션과 사용 방법을 소개합니다. 1. 자바 차이점

Sina Weibo 앱에서 그룹 채팅을 만드는 방법 Sina Weibo 앱에서 그룹 채팅을 만드는 방법 Sina Weibo 앱에서 그룹 채팅을 만드는 방법 Sina Weibo 앱에서 그룹 채팅을 만드는 방법 Mar 14, 2024 pm 09:31 PM

Sina Weibo 앱에서 그룹 채팅을 만드는 방법은 무엇입니까? Sina Weibo 앱은 사용자가 이 소프트웨어에서 친목을 도모할 수 있는 소프트웨어입니다. 사용자는 여기에서 서로를 팔로우하고 다른 사용자에게 비공개 메시지를 보낼 수도 있습니다. 많은 사용자가 여전히 그룹 채팅을 만드는 방법을 모르고 있으며 아래 편집기는 참고용으로 그룹 채팅을 만드는 방법을 정리했습니다. Sina Weibo 앱에서 그룹 채팅을 만드는 방법 1. 먼저 소프트웨어를 열고 "메시지" 인터페이스 오른쪽 상단에 있는 "기어" 옵션을 찾아 클릭합니다. 2. 그런 다음 팝업 옵션 상자를 클릭합니다.

PHP 백엔드 API 개발의 성능 튜닝 기술 PHP 백엔드 API 개발의 성능 튜닝 기술 Jun 17, 2023 am 09:16 AM

인터넷의 급속한 발전에 따라 점점 더 많은 애플리케이션이 웹 아키텍처를 채택하고 있으며, 웹 개발에 널리 사용되는 스크립트 언어인 PHP 역시 점점 더 많은 관심과 적용을 받고 있습니다. 지속적인 비즈니스 개발과 확장으로 인해 PHPWeb 애플리케이션의 성능 문제가 점차 드러나고 있습니다. 성능 튜닝을 수행하는 방법은 PHPWeb 개발자가 직면해야 하는 중요한 과제가 되었습니다. 다음으로, 이 기사에서는 PHP 백엔드 API 개발의 성능 조정 기술을 소개하여 PHP 개발자가 더 나은 결과를 얻을 수 있도록 돕습니다.

PHP 백엔드 API 개발의 확장성 설계 PHP 백엔드 API 개발의 확장성 설계 Jun 17, 2023 am 11:28 AM

인터넷의 급속한 발전으로 인해 점점 더 많은 비즈니스 요구에 따라 네트워크를 통한 데이터 교환이 필요하며, API는 데이터 전송의 중개자로서 중요한 역할을 합니다. PHP 백엔드 API 개발에서 확장성 설계는 시스템의 적응성과 확장성을 높이고 시스템의 견고성과 안정성을 향상시킬 수 있는 매우 중요한 측면입니다. 1. 확장성 설계란 무엇입니까? 확장성이란 시스템의 원래 성능에 영향을 주지 않고 비즈니스 요구 사항을 충족하기 위해 시스템의 특정 기능을 추가할 수 있음을 의미합니다. 존재하다

PHP API 개발에서 최고의 도메인 간 전략 및 구현 PHP API 개발에서 최고의 도메인 간 전략 및 구현 Jun 17, 2023 am 11:07 AM

PHP API 개발에서 최고의 크로스 도메인 전략 및 구현 RESTful API의 등장으로 백엔드 개발 언어인 PHP도 많은 웹 애플리케이션에서 널리 사용되었습니다. RESTful API를 개발할 때 도메인 간 액세스 문제를 고려해야 하는 경우가 많습니다. 이 기사에서는 PHP API 개발에서 최고의 도메인 간 전략과 이를 구현하는 방법에 대해 설명합니다. 교차 도메인(Cross-OriginResourceSharing)은 한 도메인에서 다른 도메인을 요청하려는 문서나 스크립트를 나타냅니다.

PHP API 개발에서 최고의 입력 및 출력 검증 방법 PHP API 개발에서 최고의 입력 및 출력 검증 방법 Jun 17, 2023 pm 07:44 PM

PHPAPI 개발에서 입출력 검증은 매우 중요하고 필수적인 단계입니다. 입력 및 출력 유효성 검사를 올바르게 이해하고 엄격하게 구현하면 많은 잠재적인 문제를 줄이고 보안 취약성과 오류를 방지하며 애플리케이션의 품질과 안정성을 향상시키는 데 도움이 될 수 있습니다. 다음은 PHP API 개발에서 최고의 입력 및 출력 유효성 검사 방법입니다. 입력 검증 API를 개발할 때 우리는 항상 "좋은 입력이 좋은 출력을 낳을 수 있다"는 원칙을 따라야 합니다. 따라서 입력 유효성 검사는 매우 중요한 부분입니다. 다음은

시나 웨이보 회원 활성화 방법_시나 웨이보 회원 활성화 방법 소개 시나 웨이보 회원 활성화 방법_시나 웨이보 회원 활성화 방법 소개 Mar 29, 2024 pm 07:26 PM

1. 웨이보에 로그인하여 개인 정보를 확인하고 그림과 같이 작은 왕관 아이콘을 클릭합니다. 2. 회원가입을 클릭하시면 활성화됩니다. 3. 활성화 시간과 결제 방법을 선택하고 확인을 클릭하여 활성화하세요. Sina Weibo 멤버십을 활성화하는 방법에 대한 위의 관련 방법을 읽은 후에는 직접 활성화할 수 있습니다.

See all articles