package content import ( "fmt" "github.com/silenceper/wechat/v2/miniprogram/context" "github.com/silenceper/wechat/v2/util" ) const ( checkTextURL = "https://api.weixin.qq.com/wxa/msg_sec_check?access_token=%s" checkImageURL = "https://api.weixin.qq.com/wxa/img_sec_check?access_token=%s" ) // Content 内容安全 type Content struct { *context.Context } // NewContent 内容安全接口 func NewContent(ctx *context.Context) *Content { return &Content{ctx} } // CheckText 检测文字 // @text 需要检测的文字 func (content *Content) CheckText(text string) error { accessToken, err := content.GetAccessToken() if err != nil { return err } response, err := util.PostJSON( fmt.Sprintf(checkTextURL, accessToken), map[string]string{ "content": text, }, ) if err != nil { return err } return util.DecodeWithCommonError(response, "ContentCheckText") } // CheckImage 检测图片 // 所传参数为要检测的图片文件的绝对路径,图片格式支持PNG、JPEG、JPG、GIF, 像素不超过 750 x 1334,同时文件大小以不超过 300K 为宜,否则可能报错 // @media 图片文件的绝对路径 func (content *Content) CheckImage(media string) error { accessToken, err := content.GetAccessToken() if err != nil { return err } response, err := util.PostFile( "media", media, fmt.Sprintf(checkImageURL, accessToken), ) if err != nil { return err } return util.DecodeWithCommonError(response, "ContentCheckImage") }