w3cschool-微信小程序开发文档-服务端

微信小程序 code2Seesion

auth.code2Session

本接口应在服务器端调用,详细说明参见服务端API

登录凭证校验。通过 wx.login 接口获得临时登录凭证 code 后传到开发者服务器调用此接口完成登录流程。更多使用方法详见 小程序登录

请求地址

GET https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

请求参数

属性类型默认值必填说明
appid string   小程序 appId
secret string   小程序 appSecret
js_code string   登录时获取的 code
grant_type string   授权类型,此处只需填写 authorization_code

返回值

Object

返回的 JSON 数据包

属性类型说明
openid string 用户唯一标识
session_key string 会话密钥
unionid string 用户在开放平台的唯一标识符,在满足 UnionID 下发条件的情况下会返回。
errcode number 错误码
errmsg string 错误信息

errcode 的合法值

说明最低版本
-1 系统繁忙,此时请开发者稍候再试  
0 请求成功  
40029 code 无效  
45011 频率限制,每个用户每分钟100次

微信小程序 getPaidUnionId

 

auth.getPaidUnionId

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

用户支付完成后,获取该用户的 UnionId,无需用户授权。本接口支持第三方平台代理查询。

  • 注意:调用前需要用户完成支付,且在支付后的五分钟内有效。

调用方式:

  • HTTPS 调用
  • 云调用

HTTPS 调用

请求地址

GET https://api.weixin.qq.com/wxa/getpaidunionid?access_token=ACCESS_TOKEN&openid=OPENID

请求参数

属性类型默认值必填说明
access_token string   接口调用凭证
openid string   支付用户唯一标识
transaction_id string   微信支付订单号
mch_id string   微信支付分配的商户号,和商户订单号配合使用
out_trade_no string   微信支付商户订单号,和商户号配合使用

返回值

Object

返回的 JSON 数据包

属性类型说明
unionid string 用户唯一标识,调用成功后返回
errcode number 错误码
errmsg string 错误信息

errcode 的合法值

说明最低版本
-1 系统繁忙,此时请开发者稍候再试  
0 请求成功  
40003 openid 错误  
89002 没有绑定开放平台帐号  
89300 订单无效  

使用说明

以下两种方式任选其一。

  1. 微信支付订单号(transaction_id):
https://api.weixin.qq.com/wxa/getpaidunionid?access_token=ACCESS_TOKEN&openid=OPENID&transaction_id=TRANSACTION_ID
  1. 微信支付商户订单号和微信支付商户号(out_trade_no 及 mch_id):
 https://api.weixin.qq.com/wxa/getpaidunionid?access_token=ACCESS_TOKEN&openid=OPENID&mch_id=MCH_ID&out_trade_no=OUT_TRADE_NO

返回数据示例

{
  "unionid": "oTmHYjg-tElZ68xxxxxxxxhy1Rgk",
  "errcode": 0,
  "errmsg": "ok"
}

微信小程序 getAccessToken

auth.getAccessToken

本接口应在服务器端调用,详细说明参见服务端API

获取小程序全局唯一后台接口调用凭据(access_token)。调用绝大多数后台接口时都需使用 access_token,开发者需要进行妥善保存。

请求地址

GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

请求参数

属性类型默认值必填说明
grant_type string   填写 client_credential
appid string   小程序唯一凭证,即 AppID,可在「微信公众平台 - 设置 - 开发设置」页中获得。(需要已经成为开发者,且帐号没有异常状态)
secret string   小程序唯一凭证密钥,即 AppSecret,获取方式同 appid

返回值

Object

返回的 JSON 数据包

属性类型说明
access_token string 获取到的凭证
expires_in number 凭证有效时间,单位:秒。目前是7200秒之内的值。
errcode number 错误码
errmsg string 错误信息

微信小程序 getTempMedia

2020-09-15 17:11 更新

customerServiceMessage.getTempMedia

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

获取客服消息内的临时素材。即下载临时的多媒体文件。目前小程序仅支持下载图片文件。

调用方式:

  • HTTPS 调用
  • 云调用

HTTPS 调用

请求地址

GET https://api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID

请求参数

属性类型默认值必填说明
access_token string   接口调用凭证
media_id string   媒体文件 ID

返回值

Buffer

返回的图片 Buffer

微信小程序 send

2020-07-31 14:02 更新

customerServiceMessage.send

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

发送客服消息给用户。详细规则见 发送客服消息

调用方式:

  • HTTPS 调用
  • 云调用

HTTPS 调用

请求地址

POST https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=ACCESS_TOKEN

请求参数

属性类型默认值必填说明
access_token string   接口调用凭证
touser string   用户的 OpenID
msgtype string   消息类型
text Object   文本消息,msgtype="text" 时必填
image Object   图片消息,msgtype="image" 时必填
link Object   图文链接,msgtype="link" 时必填
miniprogrampage Object   小程序卡片,msgtype="miniprogrampage" 时必填

msgtype 的合法值

说明最低版本
text 文本消息  
image 图片消息  
link 图文链接  
miniprogrampage 小程序卡片  

text 的结构

属性类型默认值必填说明
content string   文本消息内容

image 的结构

属性类型默认值必填说明
media_id string   发送的图片的媒体ID,通过 新增素材接口 上传图片文件获得。

link 的结构

属性类型默认值必填说明
title string   消息标题
description string   图文链接消息
url string   图文链接消息被点击后跳转的链接
thumb_url string   图文链接消息的图片链接,支持 JPG、PNG 格式,较好的效果为大图 640 X 320,小图 80 X 80

miniprogrampage 的结构

属性类型默认值必填说明
title string   消息标题
pagepath string   小程序的页面路径,跟app.json对齐,支持参数,比如pages/index/index?foo=bar
thumb_media_id string   小程序消息卡片的封面, image 类型的 media_id,通过 新增素材接口 上传图片文件获得,建议大小为 520*416

返回值

Object

返回的 JSON 数据包

属性类型说明
errcode number 错误码
errmsg string 错误信息

微信小程序 createQRCode

2020-07-31 14:03 更新

wxacode.createQRCode

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

获取小程序二维码,适用于需要的码数量较少的业务场景。通过该接口生成的小程序码,永久有效,有数量限制,详见获取二维码

调用方式:

  • HTTPS 调用
  • 云调用

HTTPS 调用

请求地址

POST https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=ACCESS_TOKEN

请求参数

属性类型默认值必填说明
access_token string   接口调用凭证
path string   扫码进入的小程序页面路径,最大长度 128 字节,不能为空;对于小游戏,可以只传入 query 部分,来实现传参效果,如:传入 "?foo=bar",即可在 wx.getLaunchOptionsSync 接口中的 query 参数获取到 {foo:"bar"}
width number 430 二维码的宽度,单位 px。最小 280px,最大 1280px

返回值

Buffer

返回的图片 Buffer

微信小程序 get

2020-07-31 14:03 更新

wxacode.get

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

获取小程序码,适用于需要的码数量较少的业务场景。通过该接口生成的小程序码,永久有效,有数量限制,详见获取二维码

调用方式:

  • HTTPS 调用
  • 云调用

HTTPS 调用

请求地址

POST https://api.weixin.qq.com/wxa/getwxacode?access_token=ACCESS_TOKEN

请求参数

属性类型默认值必填说明
access_token string   接口调用凭证
path string   扫码进入的小程序页面路径,最大长度 128 字节,不能为空;对于小游戏,可以只传入 query 部分,来实现传参效果,如:传入 "?foo=bar",即可在 wx.getLaunchOptionsSync 接口中的 query 参数获取到 {foo:"bar"}
width number 430 二维码的宽度,单位 px。最小 280px,最大 1280px
auto_color boolean false 自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调
line_color Object {"r":0,"g":0,"b":0} auto_color 为 false 时生效,使用 rgb 设置颜色 例如 {"r":"xxx","g":"xxx","b":"xxx"} 十进制表示
is_hyaline boolean false 是否需要透明底色,为 true 时,生成透明底色的小程序码

返回值

Buffer

返回的图片 Buffer

微信小程序 getUnlimited

2020-07-31 14:03 更新

wxacode.getUnlimited

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

获取小程序码,适用于需要的码数量极多的业务场景。通过该接口生成的小程序码,永久有效,数量暂无限制。 更多用法详见 获取二维码

调用方式:

  • HTTPS 调用
  • 云调用

微信小程序 小程序使用·batchGetOrder

2020-07-31 14:04 更新

logistics.batchGetOrder

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

批量获取运单数据

调用方式:

  • HTTPS 调用
  • 云调用

HTTPS 调用

请求地址

POST https://api.weixin.qq.com/cgi-bin/express/business/order/batchget?access_token=ACCESS_TOKEN

请求参数

属性类型默认值必填说明
access_token string   接口调用凭证
order_list Array.<Object>   订单列表, 最多不能超过100个

order_list 的结构

属性类型默认值必填说明
order_id string   订单ID
delivery_id string   快递公司ID,参见getAllDelivery
waybill_id string   运单ID

返回值

Object

属性类型说明
order_list Array.<Object> 运单列表
order_status number 运单状态, 0正常,1取消

order_list 的结构

属性类型说明
errcode number 错误码
errmsg string 错误信息
order_id string 订单ID
delivery_id string 快递公司ID,参见getAllDelivery
waybill_id string 运单ID
print_html string 运单 html 的 BASE64 结果
waybill_data Array.<Object> 运单信息

order_list.waybill_data 的结构

属性类型说明
key string 运单信息 key
value string 运单信息 value

请求数据示例

{
   "order_list": [
       {
          "order_id": "01234567890123456789",
          "delivery_id": "SF",
          "waybill_id": "123456789"
       },
       {
          "order_id": "01234567890123456789",
          "delivery_id": "SF",
          "waybill_id": "123456789"
       }
   ]
}

返回数据示例

{
   "order_list": [
       {
          "errcode": 0,
          "errmsg": "ok",
          "order_id": "01234567890123456789",
          "delivery_id": "SF",
          "waybill_id": "123456789",
          "print_html": "jh7DjipP4ul4CQYUh69cniskrQZuOPwa1inAbXIqKbU0t71c0s65Au54cdWBZW0QJY4LYeofdM",
          "waybill_data": [
               {
                   "key": "SF_bagAddr",
                   "value": "广州"
               },
               {
                  "key": "SF_mark",
                  "value": "101- 07-03 509"
               }
           ],
           "order_status": 0
       },
       {
          "errcode": 0,
          "errmsg": "ok",
          "order_id": "01234567890123456789_2",
          "delivery_id": "SF",
          "waybill_id": "123456789_2",
          "print_html": "jh7DjipP4ul4CQYUh69cniskrQZuOPwa1inAbXIqKbU0t71c0s65Au54cdWBZW0QJY4LYeofdM",
          "waybill_data": [
               {
                   "key": "SF_bagAddr",
                   "value": "广州"
               },
               {
                  "key": "SF_mark",
                  "value": "101- 07-03 509"
               }
           ],
           "order_status": 0
       }
   ]
}

微信小程序 小程序使用·addOrder

2020-07-31 14:04 更新

logistics.addOrder

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

生成运单

调用方式:

  • HTTPS 调用
  • 云调用

HTTPS 调用

请求地址

POST https://api.weixin.qq.com/cgi-bin/express/business/order/add?access_token=ACCESS_TOKEN

请求参数

属性类型默认值必填说明
access_token string   接口调用凭证
add_source number   订单来源,0为小程序订单,2为App或H5订单,填2则不发送物流服务通知
wx_appid string   App或H5的appid,add_source=2时必填,需和开通了物流助手的小程序绑定同一open帐号
order_id string   订单ID,须保证全局唯一,不超过512字节
openid string   用户openid,当add_source=2时无需填写(不发送物流服务通知)
delivery_id string   快递公司ID,参见getAllDelivery
biz_id string   快递客户编码或者现付编码
custom_remark string   快递备注信息,比如"易碎物品",不超过1024字节
tagid number   订单标签id,用于平台型小程序区分平台上的入驻方,tagid须与入驻方账号一一对应,非平台型小程序无需填写该字段
sender Object   发件人信息
receiver Object   收件人信息
cargo Object   包裹信息,将传递给快递公司
shop Object   商品信息,会展示到物流服务通知和电子面单中
insured Object   保价信息
service Object   服务类型
expect_time number   Unix 时间戳, 单位秒,顺丰必须传。 预期的上门揽件时间,0表示已事先约定取件时间;否则请传预期揽件时间戳,需大于当前时间,收件员会在预期时间附近上门。例如expect_time为“1557989929”,表示希望收件员将在2019年05月16日14:58:49-15:58:49内上门取货。说明:若选择 了预期揽件时间,请不要自己打单,由上门揽件的时候打印。如果是下顺丰散单,则必传此字段,否则不会有收件员上门揽件。

sender 的结构

属性类型默认值必填说明
name string   发件人姓名,不超过64字节
tel string   发件人座机号码,若不填写则必须填写 mobile,不超过32字节
mobile string   发件人手机号码,若不填写则必须填写 tel,不超过32字节
company string   发件人公司名称,不超过64字节
post_code string   发件人邮编,不超过10字节
country string   发件人国家,不超过64字节
province string   发件人省份,比如:"广东省",不超过64字节
city string   发件人市/地区,比如:"广州市",不超过64字节
area string   发件人区/县,比如:"海珠区",不超过64字节
address string   发件人详细地址,比如:"XX路XX号XX大厦XX",不超过512字节

receiver 的结构

属性类型默认值必填说明
name string   收件人姓名,不超过64字节
tel string   收件人座机号码,若不填写则必须填写 mobile,不超过32字节
mobile string   收件人手机号码,若不填写则必须填写 tel,不超过32字节
company string   收件人公司名,不超过64字节
post_code string   收件人邮编,不超过10字节
country string   收件人所在国家,不超过64字节
province string   收件人省份,比如:"广东省",不超过64字节
city string   收件人地区/市,比如:"广州市",不超过64字节
area string   收件人区/县,比如:"天河区",不超过64字节
address string   收件人详细地址,比如:"XX路XX号XX大厦XX",不超过512字节

cargo 的结构

属性类型默认值必填说明
count number   包裹数量, 需要和detail_list size保持一致
weight number   包裹总重量,单位是千克(kg)
space_x number   包裹长度,单位厘米(cm)
space_y number   包裹宽度,单位厘米(cm)
space_z number   包裹高度,单位厘米(cm)
detail_list Array.<Object>   包裹中商品详情列表

cargo.detail_list 的结构

属性类型默认值必填说明
name string   商品名,不超过128字节
count number   商品数量

shop 的结构

属性类型默认值必填说明
wxa_path string   商家小程序的路径,建议为订单页面
img_url string   商品缩略图 url
goods_name string   商品名称, 不超过128字节
goods_count number   商品数量

insured 的结构

属性类型默认值必填说明
use_insured number   是否保价,0 表示不保价,1 表示保价
insured_value number   保价金额,单位是分,比如: 10000 表示 100 元

service 的结构

属性类型默认值必填说明
service_type number   服务类型ID,详见已经支持的快递公司基本信息
service_name string   服务名称,详见已经支持的快递公司基本信息

返回值

Object

属性类型说明
order_id string 订单ID,下单成功时返回
waybill_id string 运单ID,下单成功时返回
waybill_data Array.<Object> 运单信息,下单成功时返回
errcode number 微信侧错误码,下单失败时返回
errmsg string 微信侧错误信息,下单失败时返回
delivery_resultcode number 快递侧错误码,下单失败时返回
delivery_resultmsg string 快递侧错误信息,下单失败时返回

waybill_data 的结构

属性类型说明
key string 运单信息 key
value string 运单信息 value

errcode 的合法值

说明最低版本
-1 系统失败  
47001 格式错误  
40003 openid无效  
9300502 快递公司系统错误  
9300501 快递侧逻辑错误,详细原因需要看 delivery_resultcode, 请先确认一下编码方式,python建议 json.dumps(b, ensure_ascii=False),php建议 json_encode($arr, JSON_UNESCAPED_UNICODE)  
9300503 delivery_id 不存在  
9300510 service_type 不存在  
9300526 字段长度不正确  
930561 参数错误  
9300525 bizid未绑定  
9300534 add_source=2时,wx_appid和当前小程序不同主体  
9300535 shop字段商品缩略图 url、商品名称为空或者非法,或者商品数量为0  
9300536 add_source=2时,wx_appid无效  
9300531 bizid无效  
930564 沙盒环境调用无配额  
930559 沙盒环境openid无效  

请求示例

{
  "add_source": 0,
  "order_id": "01234567890123456789",
  "openid": "oABC123456",
  "delivery_id": "SF",
  "biz_id": "xyz",
  "custom_remark": "易碎物品",
  "sender": {
    "name": "张三",
    "tel": "020-88888888",
    "mobile": "18666666666",
    "company": "公司名",
    "post_code": "123456",
    "country": "中国",
    "province": "广东省",
    "city": "广州市",
    "area": "海珠区",
    "address": "XX路XX号XX大厦XX栋XX"
  },
  "receiver": {
    "name": "王小蒙",
    "tel": "020-77777777",
    "mobile": "18610000000",
    "company": "公司名",
    "post_code": "654321",
    "country": "中国",
    "province": "广东省",
    "city": "广州市",
    "area": "天河区",
    "address": "XX路XX号XX大厦XX栋XX"
  },
  "shop": {
    "wxa_path": "/index/index?from=waybill&id=01234567890123456789",
    "img_url": "https://mmbiz.qpic.cn/mmbiz_png/OiaFLUqewuIDNQnTiaCInIG8ibdosYHhQHPbXJUrqYSNIcBL60vo4LIjlcoNG1QPkeH5GWWEB41Ny895CokeAah8A/640",
    "goods_name": "微信气泡狗抱枕&微信气泡狗钥匙扣",
    "goods_count": 2
  },
  "cargo": {
    "count": 2,
    "weight": 5.5,
    "space_x": 30.5,
    "space_y": 20,
    "space_z": 20,
    "detail_list": [
      {
        "name": "微信气泡狗抱枕",
        "count": 1
      },
      {
        "name": "微信气泡狗钥匙扣",
        "count": 1
      }
    ]
  },
  "insured": {
    "use_insured": 1,
    "insured_value": 10000
  },
  "service": {
    "service_type": 0,
    "service_name": "标准快递"
  }
}

返回示例

下单成功

{
  "order_id": "01234567890123456789",
  "waybill_id": "123456789",
  "waybill_data": [
    {
      "key": "SF_bagAddr",
      "value": "广州"
    },
    {
      "key": "SF_mark",
      "value": "101- 07-03 509"
    }
  ]
}

下单失败

{
  "errcode": 9300501,
  "errmsg": "delivery logic fail",
  "delivery_resultcode": 10002,
  "delivery_resultmsg": "客户密码不正确"
}

微信小程序 OCR·bankcard

2020-07-31 14:06 更新

ocr.bankcard

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

本接口提供基于小程序的银行卡 OCR 识别

调用方式:

  • HTTPS 调用
  • 云调用

HTTPS 调用

请求地址

POST https://api.weixin.qq.com/cv/ocr/bankcard?type=MODE&img_url=ENCODE_URL&access_token=ACCESS_TOCKEN

请求参数

属性类型默认值必填说明
access_token string   接口调用凭证
img_url string   要检测的图片 url,传这个则不用传 img 参数。
img FormData   form-data 中媒体文件标识,有filename、filelength、content-type等信息,传这个则不用传 img_url。

返回值

Object

返回的 JSON 数据包

属性类型说明
errcode string 错误码
errmsg string 错误信息
number string 银行卡号

微信小程序 OCR·idcard

2020-07-31 14:06 更新

ocr.idcard

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

本接口提供基于小程序的身份证 OCR 识别

调用方式:

  • HTTPS 调用
  • 云调用
  • 增量调用(加强版)

HTTPS 调用

请求地址

POST https://api.weixin.qq.com/cv/ocr/idcard?type=MODE&img_url=ENCODE_URL&access_token=ACCESS_TOCKEN

请求参数

属性类型默认值必填说明
access_token string   接口调用凭证
img_url string   要检测的图片 url,传这个则不用传 img 参数。
img FormData   form-data 中媒体文件标识,有filename、filelength、content-type等信息,传这个则不用传 img_url。

返回值

Object

返回的 JSON 数据包

属性类型说明
errcode string 错误码
errmsg string 错误信息
type string 正面或背面,Front / Back
valid_date string 有效期

 

posted @ 2022-03-27 21:38  hanease  阅读(232)  评论(0编辑  收藏  举报