特別聲明:html
1. 建議網站將請求的頻率限制在每秒1次如下。如請求過於頻繁,該接口將可能被禁用。
2. 本接口不須要申請接口訪問權限。web
目錄[隱藏] |
第三方網站能夠調用本分享接口,在用戶受權的狀況下,能夠以用戶的名義發佈一條動態(feeds)到QQ空間,此外還可在騰訊微博上發一條微博(用戶可本身選擇是否轉發到微博)。
注意網站必須一次性將信息傳輸給本分享接口。 分享功能如今支持網頁分享和視頻分享。 本接口將替代【QQ登陸】add_feeds接口。新接入的網站請使用本接口,原有已經使用了add_feeds接口的網站須要進行代碼改造,遷移到新的接口上來。json
兩種場景下能夠調用本分享接口: 1. 網站主動推送。當用戶在網站上進行操做(例如上傳視頻,圖片,發表評論等)後,以該用戶的名義發佈一條feeds到QQ空間中。 2. 用戶主動分享。用戶在網站上點擊「分享」按鈕,發佈一條feeds到QQ空間中,分享某個視頻,網頁或者其它內容。api
例如:某用戶在某個第三方網站上對某個信息發表了評論,網站將以該用戶的名義發表一條動態到QQ空間中,動態的具體展現以下: 安全
上圖中的1-5標註對feeds的組成以及規格進行了說明:app
1. 用戶評論:用戶在第三方網站發佈的評論等UGC信息,對應的參數爲「comment」,選填項。 2. 分享的內容標題,含源網頁URL,點擊跳轉至第三方網站網頁,對應的參數爲「title」和「url」,必填項。 3. 詳細描述:網頁摘要,對應的參數爲「summary」,選填項。 若是分享到微博平臺,則摘要內容不會在微博中顯示,若但願在微博中展現分享的內容,建議將重要信息在評論中進行描述。 4. 外部圖片:引用外部圖片(大小不超過100 x 100 px),對應的參數爲「images」,選填項。 5. 來源網站名稱及域名:標明分享的來源,對應的參數爲「site」和「fromurl」,必填項。post
OAuth2.0協議:https://graph.qq.com/share/add_share
OAuth1.0協議:http://openapi.qzone.qq.com/share/add_share測試
JSON / XML網站
POST編碼
各個參數請進行URL 編碼,編碼時請遵照 RFC 1738 (1)通用參數 -OAuth2.0協議必須傳入的通用參數,詳見這裏。
-OAuth1.0協議必須傳入的通用參數,詳見這裏。
(2)私有參數
參數名稱 | 是否必須 | 類型 | 描述 |
---|---|---|---|
title | 必須 | string | feeds的標題,對應上文接口說明中的2。 最長36箇中文字,超出部分會被截斷。 |
url | 必須 | string | 分享所在網頁資源的連接,點擊後跳轉至第三方網頁,對應上文接口說明中2的超連接。 請以http://開頭。 |
comment | string | 用戶評論內容,也叫發表分享時的分享理由,對應上文接口說明的1。 禁止使用系統生產的語句進行代替。 |
|
summary | string | 所分享的網頁資源的摘要內容,或者是網頁的概要描述,對應上文接口說明的3。 最長80箇中文字,超出部分會被截斷。 |
|
images | string | 所分享的網頁資源的表明性圖片連接",對應上文接口說明的4。 請以http://開頭,長度限制255字符。 多張圖片以豎線(|)分隔,目前只有第一張圖片有效,圖片規格100*100爲佳。 |
|
format | string | 定義API返回的數據格式。 取值說明:爲xml時表示返回的格式是xml;爲json時表示返回的格式是json。 注意:json、xml爲小寫,不然將不識別。format不傳或非xml,則返回json格式數據。 |
|
type | string | 分享內容的類型。4表示網頁;5表示視頻(type=5時,必須傳入playurl)。 | |
playurl | string | 長度限制爲256字節。僅在type=5的時候有效,表示視頻的swf播放地址。 | |
site | 必須 | string | 分享的來源網站名稱,請填寫網站申請接入時註冊的網站名稱,對應上文接口說明的5。 |
fromurl | 必須 | string | 分享的來源網站對應的網站地址url,對應上文接口說明中5的超連接。 請以http://開頭。 |
nswb | string | 值爲1時,表示分享不默認同步到微博,其餘值或者不傳此參數表示默認同步到微博。 |
1. 請求參數以OAuth2.0協議爲例(敏感信息都用*號進行了處理,實際請求中須要替換成真實的值):
access_token=*************
oauth_consumer_key=200003
openid==**********
format=xml
title=QQ空間
url=http://www.qzone.com/
comment=真不錯
summary=個人生活個人時尚
images=http://imgcache.qq.com/QzonePortal_v2/city_v2/img/news_img/2011/0526/portal_new_1306376959_375.jpg
2. 對參數進行URL編碼後拼接出的POST請求包:
POST /share/add_share HTTP/1.1
Host: graph.qq.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 431
access_token=*************&oauth_consumer_key=200003&openid=**********&title=QQ%E7%A9%BA%E9%97%B4&url=http
%3A%2F%2Fwww.qzone.com%2F&comment%3D%E7%9C%9F%E4%B8%8D%E9%94%99&summary=%E6%88%91%E7%9A%84%E7%94%9F%E6%B4%
BB%E6%88%91%E7%9A%84%E6%97%B6%E5%B0%9A&images=http%3A%2F%2Fimgcache.qq.com%2FQzonePortal_v2%2Fcity_v2%2F
img%2Fnews_img%2F2011%2F0526%2Fportal_new_1306376959_375.jpg
3.下面是Post請求的HTML Form代碼,開發者可使用此表單來測試(供PC網頁使用):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> </HEAD>
<BODY> <form action="https://graph.qq.com/share/add_share" method="post"> access token<input value="********..." name="access_token" /><br> appid<input value="222222" name="oauth_consumer_key" /><br> openid<input value="="********" " name="openid" /><br> url<input value=" http://www.qzone.com/ " name="url" /><br> comment<input value="真不錯" name="comment" /><br> summary<input value="個人生活個人時尚" name="summary" /><br> images<input value="http://imgcache.qq.com/QzonePortal_v2/city_v2/img/news_img/2011/0526/ portal_new_1306376959_375.jpg" name="images" /><br><br>
<input type="submit" value="分享" /> </form> </BODY> </HTML>
ret: 返回碼
msg: 若是ret<0,會有相應的錯誤信息提示,返回數據所有用UTF-8編碼
0: 正確返回 其它: 失敗。
OpenAPI公共錯誤碼說明詳見:【QQ登陸】公共返回碼說明。 本接口私有返回碼說明以下:
錯誤碼 | 含義說明 |
---|---|
1000 | 本接口私有參數錯誤,請根據上文的參數列表檢查參數名及參數值是否正確。 |
3006 | 輸入的文字內容信息包含敏感詞彙,禁止分享。 |
3021 | 同一賬號連續分享了同一個URL。 可行的狀況:該賬號先分享A連接,而後分享B連接,再分享A連接。 |
3028 | 分享的頻率過高超過系統設定正常值。 |
3034 | 空間被封,不能進行分享。 |
3037 | 系統檢測到客戶端操做異常須要輸入驗證碼。 |
3046 | 1秒鐘內,分享次數超過2次。 |
3047 | 存儲時發生錯誤。 |
304八、3049 | 系統內部錯誤。 請經過企業QQ聯繫QQ登陸支持人員,調查問題緣由並得到解決方案。 |
3064 | 分享信息裏包含有安全漏洞,禁止分享 。 |
<?xml version=\"1.0\" encoding=\"utf-8\"?> <data> <ret>0</ret> <msg><![CDATA[]]></msg> </data>
<?xml version=\"1.0\" encoding=\"utf-8\"?> <data> <ret>1000</ret> <msg><![CDATA[缺乏必要輸入參數]]></msg> </data>
提交成功!