Prechádzať zdrojové kódy

feat(media): add getTempFile api (#801)

add getTempFile api
曹晶 1 rok pred
rodič
commit
44b09c7c3b
1 zmenil súbory, kde vykonal 20 pridanie a 0 odobranie
  1. 20 0
      work/material/media.go

+ 20 - 0
work/material/media.go

@@ -14,6 +14,8 @@ const (
 	uploadTempFile = "https://qyapi.weixin.qq.com/cgi-bin/media/upload?access_token=%s&type=%s"
 	// uploadAttachment 上传附件资源
 	uploadAttachment = "https://qyapi.weixin.qq.com/cgi-bin/media/upload_attachment?access_token=%s&media_type=%s&attachment_type=%d"
+	// getTempFile 获取临时素材
+	getTempFile = "https://qyapi.weixin.qq.com/cgi-bin/media/get?access_token=%s&media_id=%s"
 )
 
 // UploadImgResponse 上传图片响应
@@ -148,3 +150,21 @@ func (r *Client) UploadAttachmentFromReader(filename, mediaType string, reader i
 	err = util.DecodeWithError(response, result, "UploadAttachment")
 	return result, err
 }
+
+// GetTempFile 获取临时素材
+// @see https://developer.work.weixin.qq.com/document/path/90254
+func (r *Client) GetTempFile(mediaID string) ([]byte, error) {
+	var (
+		accessToken string
+		err         error
+	)
+	if accessToken, err = r.GetAccessToken(); err != nil {
+		return nil, err
+	}
+	url := fmt.Sprintf(getTempFile, accessToken, mediaID)
+	response, err := util.HTTPGet(url)
+	if err != nil {
+		return nil, err
+	}
+	return response, nil
+}