以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 狐表处理查询微信公众号API反馈的JSON格式的结果 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91349) |
-- 作者:李孝春 -- 发布时间:2016/10/8 22:58:00 -- 狐表处理查询微信公众号API反馈的JSON格式的结果 获取access_tokenaccess_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。 接口调用请求说明 http请求方式: GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET 这个是json结果文件 {"access_token":"7zVLyZ4h0YqFA5pMQ07WxpniDMt6nQVd5jEKRTKcP3WP2uZCKY0haP3gY1EPtCLBM1Kcw6b50U2lV0bqb-YSHr4iCHsANEsUDa0qd9qbVRWnvu859NGatrpdv9L1X7JgTPVeAIAWSY","expires_in":7200} 运行代码如下: Dim XMLH As Object XMLH = CreateObject("Microsoft.XMLHTTP") Dim drs As List(Of DataRow) = DataTables("ACCESS_TOKEN").Select("AppID应用ID is not null") For Each dr As DataRow In drs XMLH.open("GET", "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" & dr("AppID应用ID") & "&secret=" & dr("AppSecret应用密钥") & "", True) \'获得实时信息 XMLH.send(Nothing) Do While XMLH.readyState <> 4 Application.DoEvents Loop \'把数据json数据转化成对象 Dim json As String = XMLH.responseText Dim ScriptControl As Object, data As Object, JscriptCode As String JscriptCode = "function toObject(json) {eval(""var o=""+json);return o;}" ScriptControl = CreateObject("MSScriptControl.ScriptControl") With ScriptControl .Language = "Javascript" .Timeout = -1 .AddCode(JscriptCode) data = .Run("toObject", json) End With \'MessageBox.Show(json) dr("ACCESSTOKEN") = data.access_token \'MessageBox.Show(dr("ACCESSTOKEN")) dr("expiresin") = data.expires_in \'MessageBox.Show(dr("expiresin")) Next 可以对应把数据写入到对应表字段中 [此贴子已经被作者于2016/10/9 0:36:37编辑过]
|
-- 作者:有点蓝 -- 发布时间:2016/10/9 9:29:00 -- 如果每一行都对应不同的公众号,上面的方法没有任何问题,否则...... |
-- 作者:李孝春 -- 发布时间:2016/10/9 9:50:00 -- 回复:(有点蓝)如果每一行都对应不同的公众号,上面... 嗯 经过测试发现他会把当前所有行的都操作了 烦请指导下 我只操作当前行的数据 怎么优化呢?谢谢!
|
-- 作者:有点蓝 -- 发布时间:2016/10/9 10:27:00 -- tables("表A").Current |