在sae中利用SaeFetchurl进行豆瓣的OAuth授权
浏览:3595次 出处信息
想在sae中做一个豆瓣我说功能的同步..
后来发现sae只提供了sina微博很友好的OAuth接口.
而对于其他的OAuth服务.我们不得不来用非常简陋的SaeFetchurl来实现.
再我参考了他的一些源码后.下面的代码已经完成了OAuth验证.测试正常.
注:下面的代码我只提供了使用API的时候授权的方法.你要问我怎么授权.有了这些还不够吗?
以下是代码片段: class Douban { public static function saying($data) { global $PunnyConfig; $o = new OAuthClient(); $o->setParam(’oauth_consumer_key’, $PunnyConfig[’douban’][’oauth_consumer_key’]); //set your consumer key $o->setParam(’oauth_token’, $PunnyConfig[’douban’][’oauth_token’]); $o->setParam(’http_method’, ’POST’); //POST $o->setUrl(’http://api.douban.com/miniblog/saying’); //broadcast api url. see http://www.douban.com/service/apidoc/reference/miniblog#添加广播 $o->signature($PunnyConfig[’douban’][’oauth_consumer_secret’], $PunnyConfig[’douban’][’oauth_token_secret’]); //your consumer secret and access token secret ; don’t forget signature. $f = new SaeFetchurl(); $f->setMethod(’post’); $data = ’<?xml version=\’1.0\’ encoding=\’UTF-8\’?>’. ’<entry xmlns:ns0="http://www.w3.org/2005/Atom" ’. ’xmlns:db="http://www.douban.com/xmlns/">’. ’<content>’ . $data . ’</content>’. //content ’</entry>’; $f->setPostData( $data ); $f->setHeader( ’Content-Type’, ’application/atom+xml’ ); $f->setHeader( ’Authorization’, $o->getOAuthHeaders(’YourSecret’) ); return $f->fetch(’http://api.douban.com/miniblog/saying’); } } |
建议继续学习:
- 豆瓣的Url结构方式一览 (阅读:6667)
- 别得瑟了,你很可悲! (阅读:6449)
- 新浪微博OAuth认证流程分析 (阅读:4083)
- 基于PECL OAuth打造微博应用 (阅读:4080)
- 深入理解OAuth与豆瓣OAuth test (阅读:3881)
- PHP for Twitter OAuth 教学演示 (阅读:3548)
- SAE云服务安全沙箱绕过4(绕过文件权限防御) (阅读:3579)
- SAE云服务安全沙箱绕过5(强制修改class私有权限) (阅读:3371)
- OAuth那些事儿 (阅读:3203)
- SAE云服务安全沙箱绕过3(绕过命令执行防御) (阅读:3080)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
文章信息
- 作者:Jessica 来源: Skiyo
- 标签: OAuth sae SaeFetchurl 豆瓣
- 发布时间:2010-08-30 07:38:34
建议继续学习
近3天十大热文
- [48] IOS安全–浅谈关于IOS加固的几种方法
- [47] 如何拿下简短的域名
- [47] 图书馆的世界纪录
- [47] Oracle MTS模式下 进程地址与会话信
- [43] android 开发入门
- [43] 【社会化设计】自我(self)部分――欢迎区
- [42] 读书笔记-壹百度:百度十年千倍的29条法则
- [41] 界面设计速成
- [39] 视觉调整-设计师 vs. 逻辑
- [37] Go Reflect 性能