Direct messages/new

跳转到: 导航, 搜索
(使用示例)
(使用示例: 添加代码)
第139行: 第139行:
 
* json:
 
* json:
 
curl -u user:password -d "text=all your bases are belong to us&user_id=11075" http://api.t.sina.com.cn/direct_messages/new.json
 
curl -u user:password -d "text=all your bases are belong to us&user_id=11075" http://api.t.sina.com.cn/direct_messages/new.json
 +
 +
====Java示例====
 +
请从 [[SDK | 微博SDK开发包下载]] 下载Java SDK<br>
 +
代码示例如下:
 +
package weibo4j.examples;
 +
 +
import weibo4j.DirectMessage;
 +
import weibo4j.Weibo;
 +
import weibo4j.WeiboException;
 +
 +
public class SendDirectMessage {
 +
    /**
 +
    * Usage: java Weibo4j.examples.DirectMessage senderID senderPassword message recipientId
 +
    * @param args String[]
 +
    */
 +
    public static void main(String[] args) {
 +
    System.setProperty("Weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY);
 +
    System.setProperty("Weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET);
 +
   
 +
        if (args.length < 4) {
 +
            System.out.println("No WeiboID/Password specified.");
 +
            System.out.println("Usage: java Weibo4j.examples.DirectMessage senderID senderPassword  recipientId message");
 +
            System.exit( -1);
 +
        }
 +
        Weibo weibo = new Weibo(args[0], args[1]);
 +
        try {
 +
          DirectMessage message = weibo.sendDirectMessage(args[2], args[3]);
 +
            System.out.println("Direct message successfully sent to " +
 +
                              message.getRecipientScreenName());
 +
            System.exit(0);
 +
        } catch (WeiboException te) {
 +
            System.out.println("Failed to send message: " + te.getMessage());
 +
            System.exit( -1);
 +
        }
 +
    }
 +
}

2010年7月2日 (五) 10:04的版本

目录

发送私信

发送一条私信。必须包含参数user和text,请求必须使用POST方式提交。成功将返回完整的发送消息。

URL

http://api.t.sina.com.cn/direct_messages/new.format

格式

xml, json

HTTP请求方式

POST

是否需要身份验证

true

请求数限制

true

请求参数

  • id: 必须参数. UID或微博昵称. 为了支持数字的微博昵称,需选填写下面2个参数screen_name或user_id:
  • screen_name: 微博昵称
  • user_id: 新浪UID
  • text: 必须参数. 要发生的消息内容,需要做URLEncode,文本大小必须小于300个汉字.

使用说明

  • 此接口问更新受限接口,越权将返回http 403 错误
  • 参数不对或缺少返回400错误

返回结果

XML示例:

<?xml version="1.0" encoding="UTF-8"?>
 <direct_message>
   <created_at>Fri Jan 08 14:45:39 +0800 2010</created_at>
   <id>207662</id>
   <text>send dm 777</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>47</statuses_count>
     <favourites_count>0</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>29</statuses_count>
     <favourites_count>0</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>

JSON示例:

 {
   "created_at":"Fri Jan 08 14:46:37 +0800 2010",
   "id":207664,
   "text":"send dm 777",
   "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":47,
        "favourites_count":0,
        "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":29,
        "favourites_count":0,
        "created_at":"Thu Jan 01 08:00:00 +0800 1970",
        "following":false,
        "geo_enabled":false,
        "verified":true}
 }

使用示例

  • xml:

curl -u user:password -d "text=all your bases are belong to us&user_id=11075" http://api.t.sina.com.cn/direct_messages/new.xml

  • json:

curl -u user:password -d "text=all your bases are belong to us&user_id=11075" http://api.t.sina.com.cn/direct_messages/new.json

Java示例

请从 微博SDK开发包下载 下载Java SDK
代码示例如下:

package weibo4j.examples;

import weibo4j.DirectMessage;
import weibo4j.Weibo;
import weibo4j.WeiboException;

public class SendDirectMessage {
   /**
    * Usage: java Weibo4j.examples.DirectMessage senderID senderPassword message recipientId
    * @param args String[]
    */
   public static void main(String[] args) {
   	System.setProperty("Weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY);
   	System.setProperty("Weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET);
   	
       if (args.length < 4) {
           System.out.println("No WeiboID/Password specified.");
           System.out.println("Usage: java Weibo4j.examples.DirectMessage senderID senderPassword  recipientId message");
           System.exit( -1);
       }
       Weibo weibo = new Weibo(args[0], args[1]);
       try {
          DirectMessage message = weibo.sendDirectMessage(args[2], args[3]);
           System.out.println("Direct message successfully sent to " +
                              message.getRecipientScreenName());
           System.exit(0);
       } catch (WeiboException te) {
           System.out.println("Failed to send message: " + te.getMessage());
           System.exit( -1);
       }
   }
}