您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“微信公眾平臺開發之如何上傳下載多媒體文件 ”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“微信公眾平臺開發之如何上傳下載多媒體文件 ”這篇文章吧。
一、上傳多媒體文件
公眾號可調用本接口來上傳圖片、語音、視頻等文件到微信服務器,上傳后服務器會返回對應的media_id,公眾號此后可根據該media_id來獲取多媒體。請注意,media_id是可復用的,調用該接口需http協議。
通常,文件上傳是通過html表單進行的,但通過CURL可以不經過瀏覽器,直接在服務器端進行表單的POST提交,完成文件上傳功能。
需要注意的是:文件名必須是完整絕對路徑,另外需要絕對路徑前加上“@”以示區分。
在Windows服務器上,格式示例為:”@F:\israel\upload\winter.jpg”,而在Linux服務器上,格式示例為:”@home/israel/upload/winter.jpg”。
http請求方式: POST/FORM
http://file.api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE
參數說明
參數 | 是否必須 | 說明 |
access_token | 是 | 調用接口憑證 |
type | 是 | 媒體文件類型,分別有圖片(image)、語音(voice)、視頻(video)和縮略圖(thumb) |
media | 是 | form-data中媒體文件標識,有filename、filelength、content-type等信息 |
上傳圖片
返回結果
{ "type": "image", "media_id": "QQ9nj-7ctrqA8t3WKU3dQN24IuFV_516MfZRZNnQ0c-BFVkk66jUkPXF49QE9L1l", "created_at": 1389793969}
上傳語音
返回結果
{ "type": "voice", "media_id": "5Idx79V9E3XfBCz_A50gr1a1_klgPpJnb_eq73yz0bn-prhIsNlwI3n6jQgshmWk", "created_at": 1389794760}
上傳視頻
返回結果
{ "type": "video", "media_id": "Jm-Wq0nXtA_oN1qNydQRP03dCsB0R2t5gCHDM3QNkBmMRE1WBaorVJNQTBRHvK9-", "created_at": 1389794768}
上傳縮略圖
返回結果
{ "type": "thumb", "thumb_media_id": "2RhP0caRKHVOmZO5AKelHkK--vqPPwgUaRp5-WE63dvmmPRWiYVKgvNblIp_gv79", "created_at": 1389794771}
參數說明
參數 | 描述 |
type | 媒體文件類型,分別有圖片(image)、語音(voice)、視頻(video)和縮略圖(thumb,主要用于視頻與音樂格式的縮略圖) |
media_id | 媒體文件上傳后,獲取時的唯一標識 |
created_at | 媒體文件上傳時間戳 |
注意事項
上傳的多媒體文件有格式和大小限制,如下:
? 圖片(image): 128K,支持JPG格式
? 語音(voice):256K,播放長度不超過60s,支持AMR\MP3格式
? 視頻(video):1MB,支持MP4格式
? 縮略圖(thumb):64KB,支持JPG格式
媒體文件在后臺保存時間為3天,即3天后media_id失效。對于需要重復使用的多媒體文件,可以每3天循環上傳一次,更新media_id。
二、下載多媒體文件
公眾號可調用本接口來獲取多媒體文件。請注意,視頻文件不支持下載,調用該接口需http協議。
下載文件使用獲取圖片數據,寫入新文件的方法。
http請求方式: GET
http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID
參數說明
參數 | 是否必須 | 說明 |
access_token | 是 | 調用接口憑證 |
media_id | 是 | 媒體文件ID |
下載圖片
代碼實現
返回HTTP頭示例如下
{ "url": "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=My4oqLEyFVrgFF-XOZagdvbTt9XywYjGwMg_GxkPwql7-f0BpnvXFCOKBUyAf0agmZfMChW5ECSyTAgAoaoU2WMyj7aVHmB17ce4HzLRZ3XFTbm2vpKt_9gYA29xrwIKpnvH-BYmNFSddt7re5ZrIg&media_id=QQ9nj-7ctrqA8t3WKU3dQN24IuFV_516MfZRZNnQ0c-BFVkk66jUkPXF49QE9L1l", "content_type": "image/jpeg", "http_code": 200, "header_size": 308, "request_size": 316, "filetime": -1, "ssl_verify_result": 0, "redirect_count": 0, "total_time": 1.36, "namelookup_time": 1.016, "connect_time": 1.078, "pretransfer_time": 1.078, "size_upload": 0, "size_download": 105542, "speed_download": 77604, "speed_upload": 0, "download_content_length": 105542, "upload_content_length": 0, "starttransfer_time": 1.141, "redirect_time": 0}
下載語音
代碼實現
返回HTTP頭如下
{ "url": "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=My4oqLEyFVrgFF-XOZagdvbTt9XywYjGwMg_GxkPwql7-f0BpnvXFCOKBUyAf0agmZfMChW5ECSyTAgAoaoU2WMyj7aVHmB17ce4HzLRZ3XFTbm2vpKt_9gYA29xrwIKpnvH-BYmNFSddt7re5ZrIg&media_id=5Idx79V9E3XfBCz_A50gr1a1_klgPpJnb_eq73yz0bn-prhIsNlwI3n6jQgshmWk", "content_type": "audio/amr", "http_code": 200, "header_size": 306, "request_size": 316, "filetime": -1, "ssl_verify_result": 0, "redirect_count": 0, "total_time": 0.125, "namelookup_time": 0.031, "connect_time": 0.063, "pretransfer_time": 0.063, "size_upload": 0, "size_download": 10470, "speed_download": 83760, "speed_upload": 0, "download_content_length": 10470, "upload_content_length": 0, "starttransfer_time": 0.125, "redirect_time": 0}
可以看出,MP3的語音格式被壓縮成AMR格式了。
下載縮略圖
實現代碼
返回HTTP頭如下
{ "url": "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=My4oqLEyFVrgFF-XOZagdvbTt9XywYjGwMg_GxkPwql7-f0BpnvXFCOKBUyAf0agmZfMChW5ECSyTAgAoaoU2WMyj7aVHmB17ce4HzLRZ3XFTbm2vpKt_9gYA29xrwIKpnvH-BYmNFSddt7re5ZrIg&media_id=2RhP0caRKHVOmZO5AKelHkK--vqPPwgUaRp5-WE63dvmmPRWiYVKgvNblIp_gv79", "content_type": "image/jpeg", "http_code": 200, "header_size": 306, "request_size": 316, "filetime": -1, "ssl_verify_result": 0, "redirect_count": 0, "total_time": 0.094, "namelookup_time": 0, "connect_time": 0.047, "pretransfer_time": 0.047, "size_upload": 0, "size_download": 6057, "speed_download": 64436, "speed_upload": 0, "download_content_length": 6057, "upload_content_length": 0, "starttransfer_time": 0.094, "redirect_time": 0}
至于回復相應的消息,就是利用消息接口或者客服接口,構造成相應的消息就行了,和構造文本,圖文消息的方法是一樣的。
以上是“微信公眾平臺開發之如何上傳下載多媒體文件 ”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。