微信小程序开发文档 第17页
开发者工具提供了命令行与 HTTP 服务两种接口供外部调用,开发者可以通过命令行或 HTTP 请求指示工具进行登录、预览、上传等操作。 命令行 通过命令行调用安装完成的工具可执行文件,完成登录、预览、上传、自动化测试等操作。调用返回码为 0 时代表正常,为 -1 时错误。 命令行工具所在位置: macOS: <安装路径>/Contents/Resources/app.nw/bin/cli Windows: <安装路径>/cli.bat 1. 命令行启动工具 -o, –open [projectpath]: 打开工具,如果不带 projectpath,只是打开工具。如果带 project path,则打开路径中的项目,每次执行都会自动编译刷新,并且自动打开模拟器和调试器。projectpath 不能是相对路径。项目路径中必须含正确格式的 project.config.json 且其中有 appid 和 projectname 字段。 示例: # 打开工具 cli -o # 打开路径 /Users/username/demo 下的项目 cli -o base64@/Users/username/demo 2. 命令行登录 命令行提供两种登录方式:一是将登录二维码转成 base64 给用户,让用户自己集成到自己系统中使用;二是将二维码打印在命令行中。 -l, –login: 启动登录逻辑。 –login-qr-output [format[@path]]: 指定二维码输出形式,format 可选值包括 terminal(命令行输出), base64, image。如果有填 path,表示结果输出到指定路径的文件中。如果没填 path,表示将结果输出到命令行。不使用此选项或使用了但没有填 format 的话则默认为命令行打印。 示例: # 登录,在终端中打印登录二维码 cli -l # 登录,在终端中打印登录 base64 形式的二维码 cli -l --login-qr-output base64 # 登录,二维码转成 base64 并存到文件 /Users/username/code.txt cli -l --login-qr-output base64@/Users/username/code.txt 3. 命令行提交预览 预览时必须处于登录状态,如果没有登录,会提示需先登录。预览的二维码可命令行打印也可以转成 base64。ES6 等项目配置从 project.config.json 读。 -p, –preview <project_root>: 预览代码,project_root 指定项目根路径。 –preview-qr-output [format[@path]]: 指定二维码输出形式,语义同登录用的选项 –login-qr-output。 示例: # 预览,在终端中打印登录二维码 cli -p /Users/username/demo # 预览,二维码转成 base64 并存到文件 /Users/username/code.txt cli -p /Users/username/demo --preview-qr-output base64@/Users/username/code.txt 4. 命令行上传代码 上传代码时必须处于登录状态,如果没有登录,会提示需先登录。 上传代码需要的信息包括项目根目录、版本号、以及可选的版本备注。 -u,...
设置页提供对编辑器(外观和代码编辑)、代理和通知的配置。菜单栏上点击设置,或者使用快捷键 ctrl(⌘) + , 可以打开设置页。 入口 菜单栏上点击设置可以打开设置页。设置页侧边栏分别是编辑器、代理和通知的配置。 编辑器配置 编辑器支持配置外观和代码编辑器习惯和风格。 编辑器外观配置 主题:白色、深色、黑色 字体 字号 行距 编辑配置支持 修改文件时自动保存 编译时自动保存所有文件 文件保存时自动编译小程序 自动折行 用空格代替 Tab 代码缩略图 总是在新标签页打开文件 Git 比较文件内容时,忽略 Windows 风格回车符 Tab 大小 如果选中了 “总是在新标签页打开文件”,则在编辑器目录树点击文件时,总是会在一个新标签页中打开此文件,而非在临时标签页中打开。 代理配置 可以配置不使用代理,或使用系统代理,或使用自定义代理。 通用配置 用于设置关于语言、工作区路径,以及开发者工具的个性化设置需求
启动页 登录页 在登录页,可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。 项目列表 登录成功后,会看到已经存在的项目列表和代码片段列表,在项目列表可以选择公众号网页调试,进入到公众号网页调试模式 新建项目 当符合以下条件时,可以在本地创建一个小程序项目 需要一个小程序的 AppID;如没有 AppID,可以选择申请使用测试号。 登录的微信号需要是该 AppID 的开发者; 需要选择一个空目录,或者选择的非空目录下存在 app.json 或者 project.config.json。当选择空目录时,可以选择是否在该目录下生成一个简单的项目。 多开项目 工具支持同时打开多个项目,每次打开项目时会从新窗口打开,入口有以下几种: 从项目选择页打开项目,处于项目窗口时可以从菜单栏的项目 -> 查看所有项目打开项目选择页 从菜单栏的最近打开项目列表中打开的项目会从新窗口打开 新建项目 命令行或 HTTP 调用工具打开项目 管理项目 对本地项目进行删除和批量删除 主界面 开发者工具主界面,从上到下,从左到右,分别为:菜单栏、工具栏、模拟器、编辑器、调试器 五大部分。 菜单栏 微信web开发者工具 切换帐号:快速切换登录用户关于:关于开发者工具检查更新:检查版本更新开发者论坛:前往开发者论坛开发者文档:前往开发者文档调试:调试开发者工具、调试编辑器;如果遇到疑似开发者工具或者编辑器的 bug,可以打开调试工具查看是否有出错日志,欢迎在论坛上反馈相关问题更换开发模式:快速切换公众号网页调试和小程序调试退出:退出开发者工具 项目 新建项目:快速新建项目打开最近:可以查看最近打开的项目列表,并选择是否进入对应项目查看所有项目:新窗口打开启动页的项目列表页关闭当前项目:关闭当前项目,回到启动页的项目列表页 文件 新建文件保存保存所有关闭文件 编辑:可以查看编辑相关的操作和快捷键 工具 编译:编译当前小程序项目刷新:与编译的功能一致,由于历史原因保留对应的快捷键 ctrl(⌘) + R编译配置:可以选择普通编译或自定义编译条件前后台切换:模拟客户端小程序进入后台运行和返回前台的操作清除缓存:清除文件缓存、数据缓存、以及授权数据 界面:控制主界面窗口模块的显示与隐藏 设置: 外观设置:控制编辑器的配色主题、字体、字号、行距编辑设置:控制文件保存的行为,编辑器的表现代理设置:选择直连网络、系统代理和手动设置代理通知设置:设置是否接受某种类型的通知 工具栏 点击用户头像可以打开个人中心,在这里可以便捷的切换用户和查看开发者工具收到的消息。 用户头像右侧是控制主界面模块显示/隐藏的按钮。至少需要有一个模块显示。 工具栏中间,可以选择普通编译,也可以新建并选择自定义条件进行编译和预览。 通过切后台按钮,可以模拟小程序进入后台的情况 工具栏上提供了清缓存的快速入口。可以便捷的清除工具上的文件缓存、数据缓存、还有后台的授权数据,方便开发者调试。 工具栏右侧是开发辅助功能的区域,在这里可以上传代码、申请测试、上传腾讯云、查看项目信息 工具栏管理 在工具栏上点击鼠标右键,可以打开工具栏管理 模拟器 模拟器可以模拟小程序在微信客户端的表现。小程序的代码通过编译后可以在模拟器上直接运行。 开发者可以选择不同的设备,也可以添加自定义设备来调试小程序在不同尺寸机型上的适配问题。 在模拟器底部的状态栏,可以直观地看到当前运行小程序的场景值,页面路径及页面参数 独立窗口 点击 模拟器/调试器 右上角的按钮可以使用独立窗口显示 模拟器/调试器
subscribeMessage.send 本接口应在服务器端调用,详细说明参见服务端API。 本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载) wx-server-sdk >= 0.4.0 发送订阅消息 调用方式: HTTPS 调用 云调用 HTTPS 调用 请求地址 POST https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=ACCESS_TOKEN 请求参数 属性 类型 默认值 必填 说明 access_token string 是 接口调用凭证 touser string 是 接收者(用户)的 openid template_id string 是 所需下发的订阅模板id page string 否 点击模板卡片后的跳转页面,仅限本小程序内的页面。支持带参数,(示例index?foo=bar)。该字段不填则模板无跳转。 data Object 是 模板内容,格式形如 { “key1”: { “value”: any }, “key2”: { “value”: any } } miniprogram_state string 否 跳转小程序类型:developer为开发版;trial为体验版;formal为正式版;默认为正式版 lang string 否 进入小程序查看”的语言类型,支持zh_CN(简体中文)、en_US(英文)、zh_HK(繁体中文)、zh_TW(繁体中文),默认为zh_CN 返回值 Object 返回的 JSON 数据包 属性 类型 说明 errcode number 错误码 errmsg string 错误信息 errcode 的合法值 值 说明 最低版本 40003 touser字段openid为空或者不正确 40037 订阅模板id为空不正确 43101 用户拒绝接受消息,如果用户之前曾经订阅过,则表示用户取消了订阅关系 47003 模板参数不准确,可能为空或者不满足规则,errmsg会提示具体是哪个字段出错 41030 page路径不正确,需要保证在现网版本小程序中存在,与app.json保持一致 接口限制 次数限制:开通支付能力的是3kw/日,没开通的是1kw/日。 请求示例 { "touser": "OPENID", "template_id": "TEMPLATE_ID", "page": "index", "miniprogram_state":"developer", "lang":"zh_CN", "data": { "number01": { "value": "339208499" }, "date01": { "value": "2015年01月05日" }, "site01": { "value": "TIT创意园" }...
subscribeMessage.getTemplateList 本接口应在服务器端调用,详细说明参见服务端API。 本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载) wx-server-sdk >= 0.4.0 获取当前帐号下的个人模板列表 调用方式: HTTPS 调用 云调用 HTTPS 调用 请求地址 GET https://api.weixin.qq.com/wxaapi/newtmpl/gettemplate?access_token=ACCESS_TOKEN 请求参数 属性 类型 默认值 必填 说明 access_token string 是 接口调用凭证 返回值 Object 返回的 JSON 数据包 属性 类型 说明 errcode number 错误码 errmsg string 错误信息 data Array.<Object> 个人模板列表 data 的结构 属性 类型 说明 priTmplId string 添加至帐号下的模板 id,发送小程序订阅消息时所需 title string 模版标题 content string 模版内容 example string 模板内容示例 type number 模版类型,2 为一次性订阅,3 为长期订阅 响应示例 { "errcode": 0, "errmsg": "ok", "data": [ { "priTmplId": "9Aw5ZV1j9xdWTFEkqCpZ7mIBbSC34khK55OtzUPl0rU", "title": "报名结果通知", "content": "会议时间:{{date2.DATA}}\n会议地点:{{thing1.DATA}}\n", "example": "会议时间:2016年8月8日\n会议地点:TIT会议室\n", "type": 2 } ] } 云调用 云调用是小程序·云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。 接口方法 openapi.subscribeMessage.getTemplateList 需在 config.json 中配置 subscribeMessage.getTemplateList API 的权限,详情 返回值 Object 返回的 JSON 数据包 属性 类型 说明 errCode number 错误码 errMsg string 错误信息 data Array.<Object> 个人模板列表 data 的结构 属性 类型 说明 priTmplId string 添加至帐号下的模板 id,发送小程序订阅消息时所需 title...
subscribeMessage.getPubTemplateTitleList 本接口应在服务器端调用,详细说明参见服务端API。 本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载) wx-server-sdk >= 0.4.0 获取帐号所属类目下的公共模板标题 调用方式: HTTPS 调用 云调用 HTTPS 调用 请求地址 GET https://api.weixin.qq.com/wxaapi/newtmpl/getpubtemplatetitles?access_token=ACCESS_TOKEN 请求参数 属性 类型 默认值 必填 说明 access_token string 是 接口调用凭证 ids string 是 类目 id,多个用逗号隔开 start number 是 用于分页,表示从 start 开始。从 0 开始计数。 limit number 是 用于分页,表示拉取 limit 条记录。最大为 30。 返回值 Object 返回的 JSON 数据包 属性 类型 说明 errcode number 错误码 errmsg string 错误信息 count number 模版标题列表总数 data Array.<Object> 模板标题列表 errcode 的合法值 值 说明 最低版本 200016 start 参数错误 200017 limit 参数错误 200018 类目 ids 缺失 200019 类目 ids 不合法 data 的结构 属性 类型 说明 tid number 模版标题 id title string 模版标题 type number 模版类型,2 为一次性订阅,3 为长期订阅 categoryId number 模版所属类目 id 请求示例 { "ids": "2,616", "start": 0, "limit": 1 } 响应示例 { "errcode": 0, "errmsg": "ok",...
subscribeMessage.getPubTemplateKeyWordsById 本接口应在服务器端调用,详细说明参见服务端API。 本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载) wx-server-sdk >= 0.4.0 获取模板标题下的关键词列表 调用方式: HTTPS 调用 云调用 HTTPS 调用 请求地址 GET https://api.weixin.qq.com/wxaapi/newtmpl/getpubtemplatekeywords?access_token=ACCESS_TOKEN 请求参数 属性 类型 默认值 必填 说明 access_token string 是 接口调用凭证 tid string 是 模板标题 id,可通过接口获取 返回值 Object 返回的 JSON 数据包 属性 类型 说明 errcode number 错误码 errmsg string 错误信息 count number 模版标题列表总数 data Array.<Object> 关键词列表 data 的结构 属性 类型 说明 kid number 关键词 id,选用模板时需要 name string 关键词内容 example string 关键词内容对应的示例 rule string 参数类型 请求示例 { "tid": "99" } 响应示例 { "errcode": 0, "errmsg": "ok", "data": [ { "kid": 1, "name": "物品名称", "example": "名称", "rule": "thing" } ] } 云调用 云调用是小程序·云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。 接口方法 openapi.subscribeMessage.getPubTemplateKeyWordsById 需在 config.json 中配置 subscribeMessage.getPubTemplateKeyWordsById API 的权限,详情 请求参数 属性 类型 默认值 必填 说明 tid string 是 模板标题 id,可通过接口获取 返回值 Object 返回的 JSON 数据包 属性 类型 说明 errCode number...
subscribeMessage.getCategory 本接口应在服务器端调用,详细说明参见服务端API。 本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载) wx-server-sdk >= 0.4.0 获取小程序账号的类目 调用方式: HTTPS 调用 云调用 HTTPS 调用 请求地址 GET https://api.weixin.qq.com/wxaapi/newtmpl/getcategory?access_token=ACCESS_TOKEN 请求参数 属性 类型 默认值 必填 说明 access_token string 是 接口调用凭证 返回的 JSON 数据包 属性 类型 说明 errcode number 错误码 errmsg string 错误信息 data Array.<Object> 类目列表 data 的结构 属性 类型 说明 id number 类目id,查询公共库模版时需要 name string 类目的中文名 响应示例 { "errcode": 0, "errmsg": "ok", "data": [ { "id": 616, "name": "公交" } ] } 云调用 云调用是小程序·云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。 接口方法 openapi.subscribeMessage.getCategory 需在 config.json 中配置 subscribeMessage.getCategory API 的权限,详情 请求示例 const cloud = require('wx-server-sdk') cloud.init() exports.main = async (event, context) => { try { const result = await cloud.openapi.subscribeMessage.getCategory({}) return result } catch (err) { return err } } 响应示例 const cloud = require('wx-server-sdk') cloud.init() exports.main = async (event, context) => { try { const result...
subscribeMessage.deleteTemplate 本接口应在服务器端调用,详细说明参见服务端API。 本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载) wx-server-sdk >= 0.4.0 删除帐号下的个人模板 调用方式: HTTPS 调用 云调用 HTTPS 调用 请求地址 POST https://api.weixin.qq.com/wxaapi/newtmpl/deltemplate?access_token=ACCESS_TOKEN 请求参数 属性 类型 默认值 必填 说明 access_token string 是 接口调用凭证 priTmplId string 是 要删除的模板id 返回的 JSON 数据包 属性 类型 说明 errcode number 错误码 errmsg string 错误信息 请求示例 content-type: application/json; { "priTmplId": "wDYzYZVxobJivW9oMpSCpuvACOfJXQIoKUm0PY397Tc" } 响应示例 { "errmsg": "ok", "errcode": 0 } 云调用 云调用是小程序·云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。 接口方法 openapi.subscribeMessage.deleteTemplate 需在 config.json 中配置 subscribeMessage.deleteTemplate API 的权限,详情 请求参数 属性 类型 默认值 必填 说明 priTmplId string 是 要删除的模板id 请求示例 content-type: application/json; const cloud = require('wx-server-sdk') cloud.init() exports.main = async (event, context) => { try { const result = await cloud.openapi.subscribeMessage.deleteTemplate({ priTmplId: 'wDYzYZVxobJivW9oMpSCpuvACOfJXQIoKUm0PY397Tc' }) return result } catch (err) { return err } } 响应示例 const cloud = require('wx-server-sdk') cloud.init() exports.main = async (event, context) => { try...
subscribeMessage.addTemplate 本接口应在服务器端调用,详细说明参见服务端API。 本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载) wx-server-sdk >= 0.4.0 组合模板并添加至帐号下的个人模板库 调用方式: HTTPS 调用 云调用 HTTPS 调用 请求地址 POST https://api.weixin.qq.com/wxaapi/newtmpl/addtemplate?access_token=ACCESS_TOKEN 请求参数 属性 类型 默认值 必填 说明 access_token string 是 接口调用凭证 tid string 是 模板标题 id,可通过接口获取,也可登录小程序后台查看获取 kidList Array.<number> 是 开发者自行组合好的模板关键词列表,关键词顺序可以自由搭配(例如 [3,5,4] 或 [4,5,3]),最多支持5个,最少2个关键词组合 sceneDesc string 否 服务场景描述,15个字以内 返回值 Object 返回的 JSON 数据包 属性 类型 说明 errcode number 错误码 errmsg string 错误信息 priTmplId string 添加至帐号下的模板id,发送小程序订阅消息时所需 errcode 的合法值 值 说明 最低版本 200014 模版 tid 参数错误 200020 关键词列表 kidList 参数错误 200021 场景描述 sceneDesc 参数错误 200011 此账号已被封禁,无法操作 200013 此模版已被封禁,无法选用 200012 个人模版数已达上限,上限25个 请求示例 content-type: application/json; { "tid":"401", "kidList":[1,2], "sceneDesc": "测试数据" } 响应示例 { "errmsg": "ok", "errcode": 0, "priTmplId": "9Aw5ZV1j9xdWTFEkqCpZ7jWySL7aGN6rQom4gXINfJs" } 云调用 云调用是小程序·云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。 接口方法 openapi.subscribeMessage.addTemplate 需在 config.json 中配置 subscribeMessage.addTemplate API 的权限,详情 请求参数 属性 类型 默认值 必填 说明 tid string 是 模板标题 id,可通过接口获取,也可登录小程序后台查看获取 kidList Array.<number> 是 开发者自行组合好的模板关键词列表,关键词顺序可以自由搭配(例如...