开发者工具提供了命令行与 HTTP 服务两种接口供外部调用,开发者可以通过命令行或 HTTP 请求指示工具进行登录、预览、上传等操作。
HTTP
http 服务在工具启动后自动开启,HTTP 服务端口号在用户目录下记录,可通过检查用户目录、检查用户目录下是否有端口文件及尝试连接来判断工具是否安装/启动。
端口号文件位置:
macOS : ~/Library/Application Support/微信开发者工具/Default/.ide
Windows : ~/AppData/Local/微信开发者工具/User Data/Default/.ide
1. 打开工具或指定项目
接口定义:
URL: /open
HTTP 方法: GET
URL 参数 | 必填 | 说明 |
---|---|---|
projectpath | 否 | 打开指定路径中的项目。如项目已打开,自动刷新项目。如项目未创建,自动创建并打开项目。如不填,显示工具窗口 |
示例:
# 打开工具
http://127.0.0.1:端口号/open
# 打开/刷新项目
http://127.0.0.1:端口号/open?projectpath=项目全路径
注意:
- 项目路径中必须含正确格式的 project.config.json 且其中有 appid 和 projectname 字段。
- 项目路径需经 URL encode
2. 登录
接口定义:
URL:/login
HTTP 方法:GET
URL 参数 | 必填 | 说明 |
---|---|---|
format | 否 | 指定登录二维码返回格式,可选值有 image、base64、terminal,默认 image。图片格式为 png |
qroutput | 否 | 指定文件路径,在文件写入二维码数据。如指定,二维码将被写入指定路径的文件内,如未指定,二维码将作为请求相应体返回 |
resultoutput | 否 | 指定输出登录结果文件路径 |
示例:
# 登录,返回图片格式的二维码
http://127.0.0.1:端口号/login
# 登录,取 base64 格式二维码
http://127.0.0.1:端口号/login?format=base64
# 登录,取 base64 格式二维码,并写入 /Users/username/logincode.txt
http://127.0.0.1:端口号/login?format=base64&qroutput=%2FUsers%2Fusername%2Flogincode.txt
# 登录,并写入登录结果到 /Users/username/loginresult.json
http://127.0.0.1:端口号/login?resultoutput=%2FUsers%2Fusername%2Floginresult.json
3. 预览
接口定义:
URL:/preview
HTTP 方法:GET
URL 参数 | 必填 | 说明 |
---|---|---|
projectpath | 是 | 预览指定路径中的项目。如项目已打开,自动刷新项目。如项目未创建,自动创建并预览项目 |
format | 否 | 指定登录二维码返回格式,可选值有 image、base64、terminal,默认 image。图片格式为 png |
qroutput | 否 | 指定文件路径,在文件中写入二维码数据。如指定,二维码将被写入指定路径的文件内,如未指定,二维码将作为请求相应体返回 |
infooutput | 否 | 指定后,会将本次预览的额外信息以 json 格式输出至指定路径,如代码包大小、分包大小信息。 |
compilecondition | 否 | 指定自定义编译条件,值为 json 字符串,条件可指定两个字段,pathName 表示打开的页面,不填表示首页,query 表示页面参数 |
示例:
# 预览路径为 /Users/username/demo 的项目,返回图片格式的二维码
http://127.0.0.1:端口号/preview?projectpath=%2FUsers%2Fusername%2Fdemo
# 预览路径为 /Users/username/demo 的项目,返回 base64 格式的二维码
http://127.0.0.1:端口号/preview?projectpath=%2FUsers%2Fusername%2Fdemo&format=base64
# 预览路径为 /Users/username/demo 的项目,返回 base64 格式的二维码,并写入 /Users/username/logincode.txt
http://127.0.0.1:端口号/preview?projectpath=%2FUsers%2Fusername%2Fdemo&format=base64&qroutput=%2FUsers%2Fusername%2Flogincode.txt
# 预览路径为 /Users/username/demo 的项目,返回图片格式的二维码,并将预览信息输出至 /Users/username/info.json
http://127.0.0.1:端口号/preview?projectpath=%2FUsers%2Fusername%2Fdemo&infooutput=%2Users%2username%2info.json
# 预览路径为 /Users/username/demo 的项目,指定自定义编译条件,启动页为 pages/index/index,参数为 x=1&y=2
http://127.0.0.1:端口号/preview?projectpath=%2FUsers%2Fusername%2Fdemo&compilecondition={"pathName":"pages/index/index","query":"a3=1"}
4. 上传
接口定义:
URL:/upload
HTTP 方法:GET
URL 参数 | 必填 | 说明 |
---|---|---|
projectpath | 是 | 上传指定路径中的项目 |
version | 是 | 版本号 |
desc | 否 | 本次上传的版本备注 |
infooutput | 否 | 指定后,会将本次上传的额外信息以 json 格式输出至指定路径,如代码包大小、分包大小信息。 |
示例:
# 上传路径为 /Users/username/demo 的项目,指定版本号为 v1.0.0
http://127.0.0.1:端口号/upload?projectpath=%2FUsers%2Fusername%2Fdemo&version=v1.0.0
# 上传路径为 /Users/username/demo 的项目,指定版本号为 v1.0.0,并带上备注
http://127.0.0.1:端口号/upload?projectpath=%2FUsers%2Fusername%2Fdemo&version=v1.0.0&desc=test
# 上传路径为 /Users/username/demo 的项目,指定版本号为 v1.0.0,并将上传信息输出至 /Users/username/info.json
http://127.0.0.1:端口号/upload?projectpath=%2FUsers%2Fusername%2Fdemo&version=v1.0.0&infooutput=%2Users%2username%2info.json
5. 构建 npm
接口定义:
URL:/buildnpm
HTTP 方法:GET
URL 参数 | 必填 | 说明 |
---|---|---|
projectpath | 是 | 上传指定路径中的项目 |
compiletype | 否 | 编译类型,miniprogram (默认) 或 plugin |
示例:
# 构建路径为 /Users/username/demo 的项目
http://127.0.0.1:端口号/buildnpm?projectpath=%2FUsers%2Fusername%2Fdemo&compiletype=miniprogram
6. 自动预览
接口定义:
URL:/autopreview
HTTP 方法:GET
URL 参数 | 必填 | 说明 |
---|---|---|
projectpath | 是 | 指定路径中的项目。如项目已打开,自动刷新项目。如项目未创建,自动创建并自动预览项目 |
infooutput | 否 | 指定后,会将本次自动预览的额外信息以 json 格式输出至指定路径,如代码包大小、分包大小信息。 |
示例:
# 自动预览路径为 /Users/username/demo 的项目,返回图片格式的二维码,并将预览信息输出至 /Users/username/info.json
http://127.0.0.1:端口号/autopreview?projectpath=%2FUsers%2Fusername%2Fdemo&infooutput=%2Users%2username%2info.json
7. 关闭当前项目窗口
接口定义:
URL:/close
HTTP 方法:GET
URL 参数 | 必填 | 说明 |
---|---|---|
projectpath | 是 | 指定路径中的项目。 |
示例
http://127.0.0.1:端口号/close?projectpath=%2FUsers%2Fusername%2Fdemo
注:关闭项目时,会有弹窗提示是否阻止;如未阻止,将在 3 秒后关闭
8. 关闭开发者工具
接口定义:
URL:/quit
HTTP 方法:GET
示例
http://127.0.0.1:端口号/quit
注:关闭开发者工具时,会有弹窗提示是否阻止;如未阻止,将在 3 秒后关闭