Direct messages
(→使用示例: 添加代码) |
(→Java示例) |
||
第180行: | 第180行: | ||
} | } | ||
} | } | ||
+ | ====PHP示例==== | ||
+ | <pre> | ||
+ | //direct_messages | ||
+ | $c = new WeiboClient( WB_AKEY , WB_SKEY , $_SESSION['last_key']['oauth_token'] , $_SESSION['last_key']['oauth_token_secret'] ); | ||
+ | $msg = $c->list_dm(); | ||
+ | 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; | ||
+ | } | ||
+ | foreach($msg as $mail){ | ||
+ | echo('Sender: '.$mail['sender_screen_name'].' Text: '.$mail['text'].' ; '); | ||
+ | } | ||
+ | </pre> |
2010年8月4日 (三) 13:53的版本
目录 |
direct_messages
返回用户的最新n条私信,并包含发送者和接受者的详细资料。
URL
curl http://api.t.sina.com.cn/direct_messages.format
格式
xml, json
HTTP请求方式
GET
是否需要身份验证
true
请求数限制
true
请求参数
- since_id. 可选参数. 返回ID比数值since_id大(比since_id时间晚的)的私信。
o 示例: http://api.t.sina.com.cn/direct_messages.xml?since_id=12345
- max_id. 可选参数. 返回ID不大于max_id(时间不晚于max_id)的私信。
o 示例: http://api.t.sina.com.cn/direct_messages.xml?max_id=54321
- count. 可选参数. 每次返回的最大记录数(即页面大小),不大于200。
o 示例: http://api.t.sina.com.cn/direct_messages.xml?count=200
- page. 可选参数. 返回结果的页序号。注意:有分页限制。
o 示例: http://api.t.sina.com.cn/direct_messages.xml?page=3
返回结果
XML示例:
<?xml version="1.0" encoding="UTF-8"?> <direct-messages> <direct_message> <created_at>Thu Jan 07 16:20:52 +0800 2010</created_at> <id>207659</id> <text>send</text> <sender_id>10506</sender_id> <recipient_id>11075</recipient_id> <sender_screen_name>name_10506</sender_screen_name> <recipient_screen_name>name_11075</recipient_screen_name> <sender> <id>10506</id> <screen_name>name_10506</screen_name> <name>name_10506</name> <province>0</province> <city>0</city> <location></location> <description></description> <url></url> <profile_image_url>http://tp3.sinaimg.cn/10506/50/0</profile_image_url> <domain>10506</domain> <gender></gender> <followers_count>24</followers_count> <friends_count>50</friends_count> <statuses_count>0</statuses_count> <favourites_count>38</favourites_count> <created_at>Thu Jan 01 08:00:00 +0800 1970</created_at> <following>false</following> <verified>false</verified> <geo_enabled>false</geo_enabled> </sender> <recipient> <id>11075</id> <screen_name>name_11075</screen_name> <name>name_11075</name> <province>0</province> <city>0</city> <location></location> <description></description> <url></url> <profile_image_url>http://tp4.sinaimg.cn/11075/50/0</profile_image_url> <domain>11075</domain> <gender></gender> <followers_count>28</followers_count> <friends_count>50</friends_count> <statuses_count>0</statuses_count> <favourites_count>31</favourites_count> <created_at>Thu Jan 01 08:00:00 +0800 1970</created_at> <following>false</following> <verified>true</verified> <geo_enabled>false</geo_enabled> </recipient> </direct_message> ... </direct-messages>
JSON示例:
[ {"created_at":"Thu Jan 07 16:20:52 +0800 2010", "id":207659, "text":"senddm", "sender_id":10506, "recipient_id":11075, "sender_screen_name":"name_10506", "recipient_screen_name":"name_11075", "sender": {"id":10506, "screen_name":"name_10506", "name":"name_10506", "province":"0", "city":"0", "location":"", "description":"", "url":"", "profile_image_url":"http://tp3.sinaimg.cn/10506/50/0", "domain":"10506", "followers_count":24, "friends_count":50, "statuses_count":0, "favourites_count":38, "created_at":"Thu Jan 01 08:00:00 +0800 1970", "following":false, "geo_enabled":false, "verified":false}, "recipient": {"id":11075, "screen_name":"name_11075", "name":"name_11075", "province":"0", "city":"0", "location":"", "description":"", "url":"", "profile_image_url":"http://tp4.sinaimg.cn/11075/50/0", "domain":"11075", "followers_count":28, "friends_count":50, "statuses_count":0, "favourites_count":31, "created_at":"Thu Jan 01 08:00:00 +0800 1970", "following":false, "geo_enabled":false, "verified":true} }, {}, ... ]
使用示例
- xml:
curl -u user:password http://api.t.sina.com.cn/direct_messages.xml
- json:
curl -u user:password http://api.t.sina.com.cn/direct_messages.json
Java示例
请从 微博SDK开发包下载 下载Java SDK
代码示例如下:
package weibo4j.examples; import weibo4j.DirectMessage; import weibo4j.Weibo; import weibo4j.WeiboException; import java.util.List; public class GetDirectMessages{ public static void main(String[] args) { if (args.length < 2) { System.out.println("No WeiboID/Password specified."); System.out.println("Usage: java weibo4j.examples.GetDirectMessages ID Password"); System.exit(-1); } Weibo weibo = new Weibo(args[0], args[1]); try { List<DirectMessage> messages = weibo.getDirectMessages(); for (DirectMessage message : messages) { System.out.println("Sender:" + message.getSenderScreenName()); System.out.println("Text:" + message.getText() + "\n"); } System.exit(0); } catch (WeiboException te) { System.out.println("Failed to get messages: " + te.getMessage()); System.exit(-1); } } }
PHP示例
//direct_messages $c = new WeiboClient( WB_AKEY , WB_SKEY , $_SESSION['last_key']['oauth_token'] , $_SESSION['last_key']['oauth_token_secret'] ); $msg = $c->list_dm(); 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; } foreach($msg as $mail){ echo('Sender: '.$mail['sender_screen_name'].' Text: '.$mail['text'].' ; '); }