目前代码无法通过缓存获取accesstoken,访问量剧增,accesstoken只有2000,不够用
附上关键代码部分,大家帮忙分析下
Private Function CacheExists(ByVal vNewName)
dim ObjExists
CacheExists=True
Dim CacheData : CacheData=Application(flag_ &"_"& LCase(vNewName))
If Not IsArray(CacheData) Then Exit Function
If Not IsDate(CacheData(1)) Then Exit Function
If DateDiff("s",CDate(CacheData(1)),Now()) < 7000 Then
CacheExists=False '修改ObjExists为CacheExists
End If
End Function
private function getJsApiTicket()
'jsapi_ticket 应该全局存储与更新,以下代码以写入到文件中做示例
if CacheExists("JsApiTicket") then
Dim accessToken : accessToken = getAccessToken()
if accessToken<>"" then
' $url = "https://qyapi.weixin.qq.com/cgi-bin/get_jsapi_ticket?access_token=$accessToken"; 如果是企业号用以下 URL 获取 ticket
Dim strJson : strJson=GetHttpURL("https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi&access_token="& accessToken)
Dim objRe : Set objRe = getJSONObject(strJson)
if objRe.errmsg<>"ok" then
'call InErr("获取JsApiTicket失败:"& strJson)
'response.End()
getJsApiTicket=strJson
else
Dim JsApiTicket_ : JsApiTicket_= objRe.ticket
Set objRe=nothing
Call AddCache("JsApiTicket", JsApiTicket_)
getJsApiTicket = JsApiTicket_
end if
else
getJsApiTicket=""
end if
else
getJsApiTicket = GetCache("JsApiTicket")
end if
end function
private function getAccessToken()
'access_token 应该全局存储与更新
'response.write "getAccessToken" '输出是否获取access
if CacheExists("AccessToken") then
'$url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$this->appId&corpsecret=$this->appSecret"; 如果是企业号用以下URL获取access_token
Dim strJson : strJson=GetHttpURL("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="& APPID_ &"&secret="& appSecret_)
Dim objRe : Set objRe = getJSONObject(strJson)
if InStr(strJson,"errcode")>0 then
getAccessToken =strJson
'call InErr("获取AccessToken失败:"& strJson)
'response.End()
else
Dim AccessToken_ : AccessToken_= objRe.access_token
Set objRe=nothing
Call AddCache("AccessToken", AccessToken_)
getAccessToken = AccessToken_
end if
else
getAccessToken = GetCache("AccessToken")
end if
end function