第三方平台微信小程序开发
序言:这个是记录如何用第三方开发平台,建立一个只要后台授权添加一个小程序,用同一个小程序的草稿添加到模板库中,然后发布到各个不同的小程序的记录;这样就能达到一套代码维护各个小程序的目的了。
先贴出官网文档地址:
https://developers.weixin.qq.com/miniprogram/dev/devtools/ext.html
第一步:授权第三方;
你的登录你的第三方平台,在详情中,有个开发配置,在开发配置中,你就能看见添加小程序了,添加一个小程序,作为开发的小程序,这个是唯一需要开发提交的小程序;后面的其他小程序的发布只是基于它。
第二步:开发者工具中上传的代码,会先存在第三方草稿箱;
这里我们要了解下,普通的小程序和第三方小程序的却别:
1、普通的小程序,创建的时候直接填写小程序本身的APPID就可以了。
2、第三方小程序开发,创新项目的时候,填写小程序自己的APPID,同时还需要创建 ext.json 文件,里面的 extAppid 是准备发布后使用的APPID;切记,切记,如果不是同一个账号的APPID是不一样的,很多同学这块两个是同一个,这里很容易错误,如果是同一个第三方像多个小程序发布包的话,这块就要设置好。
3、提交地址不同:普通的小程序是提交到小程序本身的草稿箱中;授权第三方的小程序提交的代码会放到第三方平台的草稿箱中。
第三步:将草稿箱的代码添加到模板库获取模板ID,最多可以存50个版本;
1、获取草稿箱中的代码
通过微信的这个接口:
https://api.weixin.qq.com/wxa/gettemplatedraftlist?access_token=ACCESS_TOKEN
可以获取到草稿箱的信息
{
"errcode": 0,
"errmsg": "ok",
"draft_list": [
{
"create_time": 1585206279, //开发者上传草稿时间戳
"user_version": "1.0.0", //版本号
"user_desc": "修改问候语22", //版本描述 开发者自定义字段
"draft_id": 0, //草稿 id
"source_miniprogram_appid": "wx45100444e5c3981",//该小程序的APPid
"source_miniprogram": "易客付",
"developer": "西瓜"
}
]
}
2、添加到模板库,模板最多50个,超出了就要调用接口进行删除
3、模板库管理列表
第四步:部署代码;
这就是将模板代码提交到生产的一步,这里有个注意事情:那就是必须将域名提交到到小程序服务器域名进行替换新增,先看文档:
https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/Mini_Programs/Server_Address_Configuration.html#action-%E5%8F%AF%E9%80%89%E5%80%BC
这个地方有几点需要注意的:
1.域名必须是 https 协议的;
2.添加的域名必须是在第三方平台后台添加到 小程序服务器域名里面,不然接口无法调用;会报85017错误。
然后是提交代码,首先还是官方文档:
https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/Mini_Programs/code/commit.html#%E8%AF%B7%E6%B1%82%E5%9C%B0%E5%9D%80
之前的草稿箱中的草稿添加到模板中的小程序,第三方是可以重复使用的,可以对多个小程序方进行支持,那么如何通过部署发布出去的小程序有区别呢,这里又要说到 ext.json这个文件了
那么我发布的时候,传输的参数有个就是 这个json数据,只要将 extAppid 替换成我们需要发布的小程序的 APPID 就可以了
第五步:提交审核;
提交的时候会查看微信小程序的类目,可以登录小程序查看。
设置完成后,进行提交小程序编码;提交的接口文档是:
https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/Mini_Programs/code/submit_audit.html
第六步:发布;
官方文档先看下:
https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/Mini_Programs/code/release.html#%E8%AF%B7%E6%B1%82%E5%9C%B0%E5%9D%80
在实践过程中,碰到了一种情况,有一个小程序已经提交审核了,审核查询到的结果是:
{
"errcode": 0,
"errmsg": "ok",
"status": 0
}
如果是按照官方文档,这个是审核通过的,但是,调用发布后,提示是:“审核状态未满足发布”;
经过排查是因为我提交了多个小程序,其中有个审核通过了,但其他有几个是审核中和审核驳回,导致了这种情况,解决的办法是:重新提交一个最新的小程序审核,等其审核通过后,就可以点击发布了。
第七步:正式二维码;
注意:通过该接口生成的小程序码,永久有效,数量限制见文末说明,请谨慎使用。用户扫描该码进入小程序后,将直接进入 path 对应的页面。
接口地址:https://api.weixin.qq.com/wxa/getwxacode?access_token=ACCESS_TOKEN
返回的是一个二进制数据,很长很长的。
{
/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/wAALCAHYAdgBAREA/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIE/qor+Vev6qK/lXoooooor+qiiiiiiiiiiiiiiv5V6K/qor+Vev6qK/lXor+qiiiv5V6KKKKKK/qooor+Veiiiv6qKKKKK/lXor+/9k="
}
处理的方式也很简单,可以直接 base64 转换后,拼接 ‘data:image/jpeg;base64,’ 可以直接展示;
$res = '这个是接口返回的二进制数据';
$img = 'data:image/jpeg;base64,' . base64_encode($res); //这个前端可以直接显示就是图片了
转载请记得标注原文链接 https://blog.csdn.net/ohaha001/article/details/105119826