asp关注公众号粉丝信息自动入库
今天一个客户找我写了一个小代码,他想实现用户关注公众号时自动把这个用户的信保存到数据库,就是说当这个用户关注他的公众号时,把这个用户的微信头像,微信名,性别,地区,openid这些信息保存到数据库,做为会员信息来用,考虑了一下,查查微信开发文档,发现并不难,与是花了1个小时,写好了。
关注微信公众号自动保存用户信息入库asp代码:
'获取微信主动发送过来的内容 Set xmldom = Server.CreateObject("MSXML2.DOMDocument") xmldom.load request xml = xmldom.documentElement.xml 'call CreateTextFile(request.QueryString&xml,"a.txt") If encrypt_type = "aes" Then res = ToAes(xml,0) xmldom.loadxml res End If ToUserName=xmldom.getelementsbytagname("ToUserName").item(0).text '接收者微信账号。即我们的公众平台账号。 FromUserName=xmldom.getelementsbytagname("FromUserName").item(0).text '发送者微信账号Openid CreateTime=xmldom.getelementsbytagname("CreateTime").item(0).text MsgType=xmldom.getelementsbytagname("MsgType").item(0).text if (MsgType="event") then strEventType=xmldom.getelementsbytagname("Event").item(0).text '微信事件 if strEventType="subscribe" then '表示订阅微信公众平台 EventKey=xmldom.getelementsbytagname("EventKey").item(0).text Content="感谢关注" if EventKey<>"" then EventKey=replace(EventKey,"qrscene_","") Content = "你的上线ID:"&EventKey Else EventKey= 0 Content = "感谢关注" end if Call Login(EventKey,FromUserName) Call Return_Text(Content) ElseIf strEventType="unsubscribe" Then'取消关注 Content="取消关注" Call Return_Text(Content) ElseIf strEventType="CLICK" Then'点击菜单获取关键字,获取 EventKey=xmldom.getelementsbytagname("EventKey").item(0).text Content=EventKey Call Return_Text(Content) ElseIf strEventType="VIEW" Then'点击菜单获取关键字,跳转到链接 EventKey=xmldom.getelementsbytagname("EventKey").item(0).text Content=EventKey Call Return_Text(Content) ElseIf strEventType="SCAN" Then '扫描二维码 EventKey=xmldom.getelementsbytagname("EventKey").item(0).text Content= "欢迎再次光临" Call Return_Text(Content) ElseIf strEventType="scancode_push" or strEventType="scancode_waitmsg" Then '点击菜单,调用扫码推事件的事件推送 EventKey=xmldom.getelementsbytagname("EventKey").item(0).text ScanResult=xmldom.getelementsbytagname("ScanResult").item(0).text Content=ScanResult Call Return_Text(Content) ElseIf strEventType="pic_sysphoto" or strEventType="pic_photo_or_album" or strEventType="pic_weixin" Then '点击菜单,调用系统拍照发图 EventKey=xmldom.getelementsbytagname("EventKey").item(0).text Counts=xmldom.getelementsbytagname("Count").item(0).text Content="拍照发图,接收【"&Counts&"】张图片" Call Return_Text(Content) ElseIf strEventType="location_select" Then '点击菜单,调用位置发送 EventKey=xmldom.getelementsbytagname("EventKey").item(0).text Location_X=xmldom.getelementsbytagname("Location_X").item(0).text Location_Y=xmldom.getelementsbytagname("Location_Y").item(0).text Scale=xmldom.getelementsbytagname("Scale").item(0).text Label=xmldom.getelementsbytagname("Label").item(0).text Content="发送位置"&EventKey Call Return_Text(Content) ElseIf strEventType="LOCATION" Then'获取用户地理位置,当用户打开对话框时,自动获取微信用户的实时地址。本功能需要配合服务号的LEB接口。 Latitude=xmldom.getelementsbytagname("Latitude").item(0).text Longitude=xmldom.getelementsbytagname("Longitude").item(0).text Precision=xmldom.getelementsbytagname("Precision").item(0).text '记录用户LEB信息 end if else MsgId=xmldom.getelementsbytagname("MsgId").item(0).text End If If MsgType="text" then'接收文本信息 Content=xmldom.getelementsbytagname("Content").item(0).text Call Return_Text(Content) elseif MsgType="image" then'接收图片信息 MediaId=xmldom.getelementsbytagname("MediaId").item(0).text PicUrl=xmldom.getelementsbytagname("PicUrl").item(0).text Content=PicUrl Call Return_Text(Content) elseif MsgType="voice" then'"接收语音信息 MediaId=xmldom.getelementsbytagname("MediaId").item(0).text Format=xmldom.getelementsbytagname("Format").item(0).text Content=MediaId Call Return_Text(Content) elseif MsgType="video" then'接收视频信息 MediaId=xmldom.getelementsbytagname("MediaId").item(0).text ThumbMediaId=xmldom.getelementsbytagname("ThumbMediaId").item(0).text Content=MediaId Call Return_Text(Content) elseif MsgType="location" then'接收位置信息 Location_X=xmldom.getelementsbytagname("Location_X").item(0).text Location_Y=xmldom.getelementsbytagname("Location_Y").item(0).text Scale=xmldom.getelementsbytagname("Scale").item(0).text Label=xmldom.getelementsbytagname("Label").item(0).text Content="地理位置"&Location_X&","&Location_Y&"你发的是地址信息:"&Label Call Return_Text(Content) elseif MsgType="link" then'接收链接信息 Title=xmldom.getelementsbytagname("Title").item(0).text Descriptions=xmldom.getelementsbytagname("Description").item(0).text Url=xmldom.getelementsbytagname("Url").item(0).text Content=Url Call Return_Text(Content) end if set xmldom=Nothing