您所在的位置:小祥子 » 代码研究 » 正文

第三期:微信公众ASP接口代码

时间:2015-01-15 编辑:佚名 来源:互联网

大家好,这是小祥子第三期的代码研究,今天为大家来的是ASP的微信接口代码,直接贴出核心代码以及我为期标的注释。

<%
On Error Resume Next
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "No-Cache" 
RanDomize
Dim Signature        '微信加密签名
Dim Timestamp        '时间戳
Dim Nonce                '随机数
'Dim echoStr                '随机字符串
Dim Token
Dim Signaturetmp
Token="weixin001"'您在后台添写的 Token
Signature = Request("Signature")
Nonce = Request("Nonce")
Timestamp = Request("Timestamp")

If len(request("echostr"))>0 Then '绑定URL时需要
response.write request("echostr")
End If
'**********************************************
Dim ToUserName        '开发者微信号
Dim FromUserName'发送方帐号(一个OpenID)
Dim CreateTime        '消息创建时间(整型)
Dim MsgType                'Text
Dim Content                '文本消息内容
Set Xml_Dom = Server.CreateObject("MSXml2.DomDocument")'此处根据您的实际服务器情况改写
Xml_Dom.Load Request
FromUserName=Xml_Dom.GetElementsByTagName("FromUserName").item(0).Text '发送者微信账号
ToUserName=Xml_Dom.GetElementsByTagName("ToUserName").item(0).Text '接收者微信账号。即我们的公众平台账号。
MsgType=Xml_Dom.GetElementsByTagName("MsgType").item(0).Text
If MsgType="Text" Then
Content=Xml_Dom.GetElementsByTagName("Content").item(0).Text
End If
'Dim  mingling
'mingling=replace(content,chr(13),"")
'mingling=trim(replace(mingling,chr(10),""))
If (MsgType="event") Then
 StrEventType=Xml_Dom.GetElementsByTagName("Event").item(0).Text '微信事件
 If StrEventType="subscribe" Then '表示订阅微信公众平台
 StrsEnd=Text(FromUserName,ToUserName,"你好,欢迎关注小祥子,回复任意文字获取随机笑话一则")
 ElseIf StrEventType="unsubscribe" Then'取消关
 StrsEnd=Text(FromUserName,ToUserName,"你好")
 End If
Else
'这里也可以查询数据库,通过不同的回复来给用户不同的话
 StrsEnd=Text(FromUserName,ToUserName,"你要说的话")
End If
Response.Write StrsEnd
Set Xml_Dom=Nothing
Function Text(FromUserName,ToUserName,returnStr) '这是回复对方的一个函数,只需要知道最后一个参数是要回复的话,前两个参数是用户提交过来的时候可以得到的
Text="<Xml>" &_
"<ToUserName><![CDATA["&FromUserName&"]]></ToUserName>" &_
"<FromUserName><![CDATA["&ToUserName&"]]></FromUserName>" &_
"<CreateTime>"&now&"</CreateTime>" &_
"<MsgType><![CDATA[Text]]></MsgType>" &_
"<Content><![CDATA[" & replace(returnStr,vbcrlf,"") & "]]></Content>" &_
"<FuncFlag>0<FuncFlag>" &_
"</Xml>"
End Function
%>

关键词:微信 公众 API