简要描述:

微信accesstoken中控接口(普通的accesstoken,1天限制2000次)
https请求方式: GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Get_access_token.html

接口版本:

版本号 制定人 制定日期 修订日期
v3 陈碧贵 2021-08-27 xxxx-xx-xx

请求URL:

  • http://{url参数}/bs/api/v3/dev/wechat/普通的access-token/{ownerId}/{state}

  • {state}为随机码,保存在cookie,作为后端接口缓存redis的key

请求方式:

  • GET

请求头:

参数名 是否必须 类型 说明
XownerId string 项目唯一ID,对应bo_project {ownerId}
XsysId string 所属系统 对应 bo_system 表
XuserFromFirstShareId string 一级分享用户ID, bo_user user_id
XuserFromSecondShareId string 二级分享用户ID, bo_user user_id
XverifyApi string 加密规则encryptByDES(`${newGuid()}
XfilterAreaCode string 行政区编码, 对应 bo_sys_area area_code
Content-Type: string application/json; charset=utf-8 请求类型

请求参数:



参数名 是否必须 类型 说明
verifyGuid string 36位的guid值 ,同时需要传递给登录接口
ownerId string 所属项目
_nodejs string common-data 对应/Config/AppNodeJs/Plugins/fn- common-data.js, 通过nodejs插件,对响应结果进行二次处理 common-data 普通数据(小写驼峰)common-data-under 普通数据下划线
path参数名 是否必须 类型 说明
state string 随机状态码

返回示例:

正确时返回:

{
    "data": {
        "errcode": 0,
        "accessToken": "48_Gvh4cs_5-z8pSTwaI9bHj_J0ULbDBeJp5UZsSFGPfIn-qlvNk4V3pz2ugpDfEEbUaO1f3pY7Vxr-8GQTOTdIfXXx6EtSwXN6172YGMT2Q6xeFGxa-0Ggmq2mrXvHE_tAc4BOi2GZ82l1GY3sIJFbAAAXYU",
        "expiresIn": 7179,
        "startDate": "2021-08-28T16:53:22"
    },
    "code": "0",
    "retCode": "0",
    "success": true
}

错误时返回:

{
    "code": 0,
    "message": ""
    "error":{
      errorCode:null,
      errorText:null
    }
    "success": false,
}

中控器规则:

 string drCacheKey = $"{ownerId}-wechat-tat";

//:tat=ticket-access-token

            WeChatTicket weChatTicket = _dataResultCache.Get<WeChatTicket>(drCacheKey);
            if (weChatTicket != null && !string.IsNullOrEmpty(weChatTicket.AccessToken))
            {
                if (weChatTicket.StartDate != DateTime.MinValue)
                {
                    weChatTicket.ExpiresIn = Convert.ToInt32(weChatTicket.ExpiresIn - (DateTime.Now.ToLocalTime() - weChatTicket.StartDate).TotalMilliseconds);
                }
                return new ResultDetail<WeChatTicket>
                {
                    Success = true,
                    Data = weChatTicket
                };
            }
文档更新时间: 2021-08-28 08:00   作者:admin