微信公众号在使用的接口的时候是通过media_id来进行的,所以在使用的接口的时候我们往往需要先上传素材,支持上传素材的格式和限制如下

图片(image): 2M,支持PNG\JPEG\JPG\GIF格式。
语音(voice):2M,播放长度不超过60s,支持AMR\MP3格式。
视频(video):10MB,支持MP4格式。
缩略图(thumb):64KB,支持JPG格式。

上传永久素材:

 /*** 上传永久素材(图片)*/public function media_id_by_img(){ $type = "image";  //声明上传的素材类型,这里为image$token = $this->getSessionAccessToken();//调用接口需要获取token,这里使用一个封装好的调取access_token的函数$url = "https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=".$token."&type=".$type;//这里是请求地址,token和素材类型通过get方式传递$file_path = "/data/web/crm/kid2/public/cxwl.jpg";//这里声明文件的路径,使用绝对路径// $file_data = array('media'  => '@'.$file_path);//传递的数组,方式一:使用'@'符号加上文件的绝对路径来指引文件。这种方式适合PHP5.5之前的版本,$file_data = array("media"  => new \CURLFile($file_path));//传递的数组,方式二:从PHP5.5版本以后,引入了新的CURLFile 类来指向文件,参数传入的也是绝对路径$result=$this->postcurl($url,$file_data);dump($result);//返回结果}

getSessionAccessToken:

/*** 获取AccessToken* @return mixed*/public function getSessionAccessToken(){//第一次获取 或者已经超时  重新获取access_token//get请求方式$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".APP_ID."&secret=".SECRET;$access_token_Arr =  $this->https_request($url);// dump($access_token_Arr['access_token']);exit();return $access_token_Arr['access_token'];}

postcurl:

/*** 请求接口方法* @param $url* @param null $data* @return mixed*/function postcurl($url,$data = null){$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);if (!empty($data)){curl_setopt($ch, CURLOPT_POST, TRUE);curl_setopt($ch, CURLOPT_POSTFIELDS, $data);}curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);$output = curl_exec($ch);curl_close($ch);return    $output=json_decode($output,true);}

微信公众号(四)——上传永久素材(图片)相关推荐

  1. 微信公众号开发上传图文素材带有卡片小程序报错:errcode=45166,errmsg = invalid content hint...

    微信公众号开发自从支持允许在群发图文中插入小程序,方便了小程序的运营及推广.最近在三方服务开发中,要支持图文素材插入小程序遇到了一个很是棘手的问题.官方给出的插入小程序的示例支持文字.图片.卡片.如下 ...

  2. 微信公众号开发-上传媒体素材到微信并存入相关信息到数据库

    流程: 本地指定临时或永久素材后调用微信媒体素材上传api,将文件上传到微信服务器,微信返回含media_id的信息,本地数据库存入相关信息,以供以后素材使用. 代码 素材上传页面 <!DOCT ...

  3. 微信公众号如何上传长图

    微信公众号如何上传长图?我们先要了解为什么要做长图,有哪些难题,最后再来解决如何上传长图. 为什么要做长图? 回顾整个2019年,条漫当道,肉眼可见的,大号们都奔着条漫去了.他们大多看上去好像只用了一 ...

  4. html限制视频上传大小,微信公众号怎么上传大视频?可以上传多大的视频?

    原标题:微信公众号怎么上传大视频?可以上传多大的视频? 想在公众号文章中插入视频,但不知道公众号可以传多大的视频,这篇文章会给你答案,继续看下去吧~ 微信公众号视频大小限制多少 当写公众号文章时,我们 ...

  5. 微信公众号怎么上传资料?

    公众号没有直接上传文件的功能,我们可以换一种思路实现公众号文章附件功能. 公众号上传资料的话,公众号本身没有这些功能,但我们可以通过公众号中添加小程序的方式实现.小程序点开就是下载资料页面就行了.相信 ...

  6. 微信公众号如何上传PPT文件【教程】

    公众号如何上传PPT文件给粉丝下载?相信这是很多做运营小编的困惑.公众号自身并不支持在公众号图文中上传文件,只支持在文章里添加图片.文字.视频号.小程序等内容,对于文件,并不支持.需要在公众号图文中上 ...

  7. 微信公众号如何上传PPT?

    微信公众号上传ppt文件,点击ppt文件名字,浏览ppt,下载ppt. 通过微附件小程序,很容易就可以实现. 详细操作: 1.进入官方网站,上传附件,注意一下路径,后面要用. 2.已关联过小程序的按照 ...

  8. 微信公众号如何上传文件

    公众号添加文件下载的功能却被限制,如今可以使用小程序"微附件"进行在公众号中添加文件,推送文件给自己的粉丝. 以下是公众号上传文件使用"微附件"小程序的教程: ...

  9. 微信公众号如何上传视频

    第一步:在微信公众号新建图文中,选择右侧的视频: 第二步:新建视频: 第三步:若视频小于20MB,上传即可,否则点击腾讯视频的链接,进入腾讯视频网页版(个人认为小于20MB的视频很小): 第四步:点击 ...

  10. 微信公众号怎样上传excel表格?

    通过 微附件 小程序,可以在微信公众号上传excel文件,推送excel文件. 第一步:将附件上传到"微附件"小程序,或官方网站,这里只演示上传到官网的. 第二步:在微信公众号后台 ...

最新文章

  1. [Android] 获取设备的APP信息
  2. 【深度学习图像项目实战-从入门到上线1】怎样学会科学的调研并启动一个项目...
  3. python 值传递还是引用传递_python函数是值传递还是引用传递
  4. Linux命令执行顺序
  5. Polkamarkets推出Uniswap流动性计划
  6. Activity 的窗口去头的方式
  7. Java添零右移_为什么Java中的整数为-1零填充右移1 = 2147483647?
  8. 从分析性数据库ADS中导出数据
  9. 【PHP基础】PHP接口调用与json数据处理
  10. 踩坑记录——ProxyServer删除问题经验分享
  11. 我的招聘网——用户登录模块设计与实现
  12. 基于Multisim的MC1496调幅电路的仿真
  13. Scratch编程入门
  14. 为什么应该学好软件工程?
  15. pp模块常用表 sap_SAP 常用表 MM PP SD FICO PM PS QM WM 等
  16. pid上限问题,linux进程pid达到最大值,linux进程数最大值修改方法
  17. CPI成折叠式OLED面板保护层关键材料
  18. echarts生成图表超出父容器问题解决
  19. [Spark的二次排序的实现]
  20. java html合并单元格内容居中显示_合并Al:H1单元格区域,使合并的内容居中显示。...

热门文章

  1. IOS蓝牙4.0与读卡器通讯
  2. [凯立德]升级时如何保留上个版本的地址薄和轨迹_我是亲民_新浪博客
  3. 加班14小时只能调休半天,员工:这明摆着压榨员工!
  4. Android 仿instagram登陆页面动画
  5. 缩尾处理(winsorize)-数据分析、数据处理
  6. Windows Server 安装docker
  7. .NET List 转成逗号分隔字符串
  8. linux系统php版本kangle,kangle easypanel面板 php-5.2-7.2全版本 for linux版 极速安装
  9. いたずら学園 免DVD 重启破解+界面汉化补丁
  10. 愉快的舞会----单项队列