<thead id="jxdzp"><address id="jxdzp"><pre id="jxdzp"></pre></address></thead>

<em id="jxdzp"><span id="jxdzp"></span></em>

    <listing id="jxdzp"><nobr id="jxdzp"><meter id="jxdzp"></meter></nobr></listing>

      <address id="jxdzp"></address>
      <noframes id="jxdzp"><form id="jxdzp"><th id="jxdzp"></th></form>
      <noframes id="jxdzp"><form id="jxdzp"><th id="jxdzp"></th></form>

          微信公眾號生成帶參數的二維碼asp源碼下載

          2020/12/18 14:10:56 字體: 瀏覽 2162

          <%
          '**********************************************
          '注意事項
          'ASP文件需要以UTF-8的格式保存,否則亂碼.
          '作者 :565449214
          '**********************************************
          dim Signature    '微信加密簽名
          dim Timestamp    '時間戳
          dim Nonce        '隨機數
          dim Echostr        '隨機字符串
          dim Token        '與微信后臺設置的token一致
          dim encrypt_type  '加密類型
          dim msg_signature '簽名

          Token="qwbmqwbm"'

          Signature = request.QueryString("signature")
          Nonce = request.QueryString("nonce")
          Timestamp = request.QueryString("timestamp")
          Echostr = request.QueryString("echostr")
          encrypt_type = request.QueryString("encrypt_type")
          msg_signature = request.QueryString("msg_signature")

          '驗證微信接口
          If EchoStr<>"" then       
                  '下面進行Token,TimesTamp,Nonce三個參數的字典排序
                  dim str,i
                  dim Myarray:Myarray=Sort(Array(Token,TimesTamp,Nonce))
                  For i=0 To Ubound(Myarray)
                      str=str&Myarray(i)
                  Next
                  if Lcase(SignaTure)=Lcase(SHA1(str,"Hex")) then
                      Response.Write EchoStr    '驗證成功,返回正確EchoStr給微信,接通接口API
                      Response.End()
                  end if
          End if



          '獲取微信主動發送過來的內容
          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           

          '多圖文消息
          Function Return_News(Articles)
          ArticleCount = Ubound(Articles)+1
          str = "<xml>"&_
                "<ToUserName><![CDATA["&FromUserName&"]]></ToUserName>"&_
                "<FromUserName><![CDATA["&ToUserName&"]]></FromUserName>"&_
                "<CreateTime>"&DateDiff("s","1970-01-01 08:00:00",Now())&"</CreateTime>"&_
                "<MsgType><![CDATA[news]]></MsgType>"&_
                "<ArticleCount>"&ArticleCount&"</ArticleCount>"&_
                "<Articles>"
          For i = 0 To ArticleCount-1
          str = str & "<item>"&_
                "<Title><![CDATA["&Articles(i)(0)&"]]></Title>"&_
                "<Description><![CDATA["&Articles(i)(1)&"]]></Description>"&_
                "<PicUrl><![CDATA["&Articles(i)(2)&"]]></PicUrl>"&_
                "<Url><![CDATA["&Articles(i)(3)&"]]></Url>"&_
                "</item>"
          Next
          str = str & "</Articles>"&_
                "</xml>"
          Response.Write str
          End Function

          '文本消息
          Function Return_Text(Content)
          str = "<xml>"&_
                "<ToUserName><![CDATA["&FromUserName&"]]></ToUserName>"&_
                "<FromUserName><![CDATA["&ToUserName&"]]></FromUserName>"&_
                "<CreateTime>"&DateDiff("s","1970-01-01 08:00:00",Now())&"</CreateTime>"&_
                "<MsgType><![CDATA[text]]></MsgType>"&_
                "<Content><![CDATA["&Content&"]]></Content>"&_
                "</xml>"
          Response.Write str    
          End Function

          '字典排序
          Function Sort(ary)
                  Dim KeepChecking,I,FirstValue,SecondValue
                  KeepChecking = TRUE
                  Do Until KeepChecking = FALSE
                      KeepChecking = FALSE
                      For I = 0 to UBound(ary)
                          If I = UBound(ary) Then Exit For
                          If ary(I) > ary(I+1) Then
                              FirstValue = ary(I)
                              SecondValue = ary(I+1)
                              ary(I) = SecondValue
                              ary(I+1) = FirstValue
                              KeepChecking = TRUE
                          End If
                      Next
                  Loop
                  Sort = ary
          End Function
             
          Function PostHTTPPage(url,data)
              dim Http
              set Http=server.createobject("MSXML2.SERVERXMLHTTP.3.0")
              Http.open "POST",url,false
              Http.setRequestHeader "CONTENT-TYPE", "application/x-www-form-urlencoded"
              Http.send(data)
              if Http.readystate<>4 then
              exit function
              End if
              PostHTTPPage=Http.responseText
              set http=nothing
              if err.number<>0 then err.Clear
          End Function

          Function SHA1(ByVal Str,ByVal Types)
              Dim TAsc,Enc,Bytes,objXML,objXMLNode,Outstr
              'Borrow some objects from .NET (supported from 1.1 onwards)
              Set TAsc = Server.CreateObject("System.Text.UTF8Encoding")
              Set Enc = Server.CreateObject("System.Security.Cryptography.SHA1CryptoServiceProvider")
              'Convert the string to a byte array and hash it
              Bytes = TAsc.GetBytes_4(Str)
              Bytes = Enc.ComputeHash_2((Bytes))
              'Convert the byte array to a hex or bsae64 string
              Outstr = ""
              If Types = "Base64" Then
                  Set objXML = Server.CreateObject("Msxml2.DOMDocument")
                  Set objXMLNode = objXML.createElement("a")
                  objXMLNode.DataType = "bin.base64"
                  objXMLNode.NodeTypedValue = Bytes
                  Outstr = Replace(objXMLNode.Text,Chr(10),"")
                  Set objXML = Nothing
                  Set objXMLNode = Nothing
              ElseIf Types = "Hex" Then
                  Set objXML = Server.CreateObject("Msxml2.DOMDocument")
                  Set objXMLNode = objXML.createElement("a")
                  objXMLNode.DataType = "bin.hex"
                  objXMLNode.NodeTypedValue = Bytes
                  Outstr = Replace(objXMLNode.Text,Chr(10),"")
                  Set objXML = Nothing
                  Set objXMLNode = Nothing
              End If
              SHA1 = Outstr
              Set Enc = Nothing
              Set TAsc = Nothing
          End Function

          Sub Login(genKey,openid)
              Set Rs = Conn.ExeCute("Select * From [Wx_user] Where openid='"&openid&"'")
              If Rs.Eof Then
              UserInfo = Wx.Get_UserInfo(openid)
                nickname = UserInfo(0)
              sex = UserInfo(1)
              icon = UserInfo(2)
              province = UserInfo(4)
              city = UserInfo(5)   
              Conn.ExeCute("Insert Into [Wx_user]([username],[password],headurl,sex,province,city,openid,genkey,pid) values('"&nickname&"','"&openid&"','"&icon&"',"&sex&",'"&province&"','"&city&"','"&openid&"','"&genkey&"',"&genkey&")")
              End If
          End Sub

          %>

          相關閱讀
          小旋風ASP服務器安裝文件下載
          國內組團社旅游服務商建站解決方案
          手機網站
          Python PyInstaller安裝和使用教程(詳解版)
          諸城市龍馬假日旅行社
          jquery實現移動端下拉加載刷新更多信息
          ASP常用內置函數(上)
          秀色攝影
          共有0條關于《微信公眾號生成帶參數的二維碼asp源碼下載》的評論
          發表評論
          正在加載評論......
          返回頂部發表評論
          呢 稱:
          表 情:
          內 容:
          評論內容:不能超過 1000 字,需審核,請自覺遵守互聯網相關政策法規。
          驗證碼: 驗證碼 
          網友評論聲明,請自覺遵守互聯網相關政策法規。

          您發布的評論即表示同意遵守以下條款:
          一、不得利用本站危害國家安全、泄露國家秘密,不得侵犯國家、社會、集體和公民的合法權益;
          二、不得發布國家法律、法規明令禁止的內容;互相尊重,對自己在本站的言論和行為負責;
          三、本站對您所發布內容擁有處置權。

          更多信息>>欄目類別選擇
          百度小程序開發
          微信小程序開發
          微信公眾號開發
          uni-app
          asp函數庫
          ASP
          DIV+CSS
          HTML
          python
          更多>>同類信息
          微信公眾號用戶關注時自動推送回復小程序卡片(圖文卡片)不需要第三方平臺就可以做
          微信公眾號用客服接口推送菜單消息
          微信公眾號回復圖文消息或用客服接口推送圖文消息
          微信公眾號回復音樂消息或用客服接口推送音樂消息
          微信公眾號回復視頻消息或用客服接口推送視頻消息
          微信公眾號回復語音消息或用客服接口推送語音消息
          更多>>最新添加文章
          dw里面查找替換使用正則刪除sqlserver里面的CONSTRAINT
          Android移動端自動化測試:使用UIAutomatorViewer與Selenium定位元素
          抖音直播音掛載小雪花 懂車帝小程序
          javascript獲取瀏覽器指紋可以用來做投票
          火狐Mozilla Firefox出現:無法載入您的Firefox配置文件 它可能已經丟失 或是無法訪問 問題解決集合處理辦法
          在Android、iOS、Windows、MacOS中微信小程序的文件存放路徑
          python通過代碼修改pip下載源讓下載庫飛起
          python里面requests.post返回的res.text還有其它的嗎
          更多>>隨機抽取信息
          連云港五洲旅行社有限公司
          閃客精靈下載
          深山行者留言系統V1.0 (簡稱深山留言V1.0)
          另外的一種單項的選擇
          網站頁面設計中的Css十大注意
          全站托管解決方案
          88国产精品视频一区二区三区