# 调用服务市场接口
接口应在服务器端调用,不可在前端(小程序、网页、APP等)直接调用,具体可参考接口调用指南
接口英文名:invokeService
该接口用于调用服务平台提供的api服务。
# 1. 调用方式
# HTTPS 调用
POST https://api.weixin.qq.com/wxa/servicemarket?access_token=ACCESS_TOKEN
支持加密请求: 本接口支持服务通信二次加密和签名,可有效防止数据篡改与泄露。查看详情
# 云调用
调用方法:serviceMarket.invokeService
出入参和 HTTPS 调用相同,调用方式可查看 云调用 说明文档
# 第三方调用
本接口支持第三方平台代商家调用。
该接口所属的权限集 id 为:66-67
服务商获得其中之一权限集授权后,可通过使用 authorizer_access_token 代商家进行调用,具体可查看 第三方调用 说明文档。
# 2. 请求参数
# 查询参数 Query String parameters
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| access_token | string | 是 | 接口调用凭证,可使用 access_token、authorizer_access_token |
# 请求体 Request Payload
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| service | string | 是 | 服务 ID |
| api | string | 是 | 接口名 |
| data | string | 是 | 服务提供方接口定义的 JSON 格式的数据 |
| client_msg_id | string | 是 | 随机字符串 ID,调用方请求的唯一标识 |
# 3. 返回参数
# 返回体 Response Payload
| 参数名 | 类型 | 说明 |
|---|---|---|
| errcode | number | 错误码 |
| errmsg | string | 错误信息 |
| data | string | 回包信息 |
# 4. 注意事项
本接口无特殊注意事项
# 5. 代码示例
# 5.1 HTTPS调用
请求示例
{
"service": "wx79ac3de8be320b71",
"api": "OcrAllInOne",
"data": {
"img_url": "http://mmbiz.qpic.cn/mmbiz_jpg/7UFjuNbYxibu66xSqsQqKcuoGBZM77HIyibdiczeWibdMeA2XMt5oibWVQMgDibriazJSOibLqZxcO6DVVcZMxDKgeAtbQ/0",
"data_type": 3,
"ocr_type": 1
},
"client_msg_id": "id123"
}
返回示例
{
"errcode": 0,
"errmsg": "ok",
"data": "{\"idcard_res\":{\"type\":0,\"name\":{\"text\":\"abc\",\"pos\"…0312500}}},\"image_width\":480,\"image_height\":304}}"
}
# 5.2 云函数调用
请求示例
const cloud = require('wx-server-sdk') cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV, }) exports.main = async (event, context) => { try { const result = await cloud.openapi({ convertCase: false }).serviceMarket.invokeService({ "service": 'wx79ac3de8be320b71', "api": 'OcrAllInOne', "data": { "img_url": 'http://mmbiz.qpic.cn/mmbiz_jpg/7UFjuNbYxibu66xSqsQqKcuoGBZM77HIyibdiczeWibdMeA2XMt5oibWVQMgDibriazJSOibLqZxcO6DVVcZMxDKgeAtbQ/0', "data_type": 3, "ocr_type": 1 }, "client_msg_id": 'id123' }) return result } catch (err) { return err } }
返回示例
{
"errCode": 0,
"errMsg": "openapi.serviceMarket.invokeService:ok",
"data": "{\"idcard_res\":{\"type\":0,\"name\":{\"text\":\"abc\",\"pos\"…0312500}}},\"image_width\":480,\"image_height\":304}}"
}
# 6. 错误码
以下是本接口的错误码列表,其他错误码可参考 通用错误码;调用接口遇到报错,可使用官方提供的 API 诊断工具 辅助定位和分析问题。
| 错误码 | 错误描述 | 解决方案 |
|---|---|---|
| 40001 | invalid credential access_token isinvalid or not latest | 获取 access_token 时 AppSecret 错误,或者 access_token 无效。请开发者认真比对 AppSecret 的正确性,或查看是否正在为恰当的公众号调用接口 |
| 43002 | require POST method | 方法调用错误,请用 post 方法调用 |
| 44002 | empty post data | POST 的数据包为空。post请求body参数不能为空。 |
| 47001 | data format error | 解析 JSON/XML 内容错误;post 数据中参数缺失;参数需以 JSON 字符串格式写在post请求的 body 中,请检查修正后重试 |
| 9301001 | invalid parameter | 修改入参后重试 |
| 9301002 | call api service failed | 函数调用失败,检查参数后重试 |
| 9301010 | consumption failure | 扣费失败,可能费用为0,需要重新购买/重试 |
| 9301012 | service timeout | 服务访问超时,检查参数后重试 |
# 7. 适用范围
| 小程序 | 公众号 | 服务号 | 小游戏 | 移动应用 | 视频号助手 |
|---|---|---|---|---|---|
| ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
- ✔:该账号可调用此接口
- 其他未明确声明的账号类型,如无特殊说明,均不可调用此接口;