歡迎來到安信科技官方網站!【www.boomerlogic.com】
      18112005550
      工作時間: 8:30-21:30
      新聞中心
      News Center

      微信公眾號支付源碼asp分享(3.微信公眾號支付程序常用函數文件)

      資訊分類: 移動微信  瀏覽: 2019年11月3日

      在線測試支付效果(微信掃碼測試公眾號支付效果)

      接口對接服務熱線:180-687-28630 QQ:120094883點擊這里給我發消息


      '獲取客戶端IP
      Function GetIP()
      Dim strIPAddr
      If Request.ServerVariables("HTTP_X_FORWARDED_FOR") = "" Or InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), "unknown") > 0 Then
      strIPAddr = Request.ServerVariables("REMOTE_ADDR")
      ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",") > 0 Then
      strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")-1)
      ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";") > 0 Then
      strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";")-1)
      Else
      strIPAddr = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
      End If
      getIP = Checkstr(Trim(Mid(strIPAddr, 1, 30)))
      End Function

      '生成支付單號
      Function GetOrderId()
      dim wxa,wxb
      randomize
      wxa=int(900*rnd)+100
      wxb=now()
      GetOrderId=year(wxb)&right("0"&month(wxb),2)&right("0"&day(wxb),2)&right("0"&hour(wxb),2)&right("0"&minute(wxb),2)&right("0"&second(wxb),2)&wxa
      End function

      '過濾字符
      Function Checkstr(Str)
      If Isnull(Str) Then
      CheckStr = ""
      Exit Function
      End If
      Str = Replace(Str,Chr(0),"")
      CheckStr = Replace(Str,"'","''")
      End Function

      '返回當前日期
      Function getStrNow()
      dim strNow:strNow = Now()
      strNow = Year(strNow) & Right(("00" & Month(strNow)),2) & Right(("00" & Day(strNow)),2) & Right(("00" & Hour(strNow)),2) & Right(("00" &  Minute(strNow)),2) & Right(("00" & Second(strNow)),2)
      getStrNow = strNow
      End Function

      '獲取隨機數,返回 [min,max]范圍的數
      Function getRandNumber(max, min)
      Randomize
      getRandNumber = CInt((max-min+1)*Rnd()+min)
      End Function

      '獲取隨機數字的字符串,返回[min,max]范圍的數字字符串
      Function getStrRandNumber(max, min)
      dim randNumber:randNumber = getRandNumber(max, min)
      getStrRandNumber = CStr(randNumber)
      End Function

      '生成隨機字符串
      Function GetRnd(t0)
      randomize
      dim n1,n2,n3
      do while len(getrnd) n1=cstr(chrw((57-48)*rnd+48)) '0~9
      n2=cstr(chrw((90-65)*rnd+65)) 'a~z
      n3=cstr(chrw((122-97)*rnd+97)) 'a~z
      getrnd=getrnd&n1&n2&n3
      loop
      End Function

      '時間戳轉換成普通日期
      Function FromUnixTime(intTime)
      If IsEmpty(intTime) Or Not IsNumeric(intTime) Then
      FromUnixTime = Now()
      Exit Function
      End If
      FromUnixTime = DateAdd("s", intTime, "1970-1-1 0:0:0")
      FromUnixTime = DateAdd("h", 8, FromUnixTime)
      End Function

      '普通日期轉換成時間戳
      Function ToUnixTime(strTime)
      If IsEmpty(strTime) or Not IsDate(strTime) Then strTime = Now
      ToUnixTime = DateAdd("h",-8,strTime)
      ToUnixTime = DateDiff("s","1970-1-1 0:0:0", ToUnixTime)
      End Function

      'POST過程
      Function Get_code_url(url,xml)
      Dim code_url,data
      data =Response_Data(xml,url,1)
      code_url = PostURL(md5url,data)
      Get_code_url = code_url
      End Function

      '整合POST數據
      Function Response_Data(xml,url,cert)
      dim domain:domain=Request.ServerVariables("HTTP_HOST")
      If cert=1 Then
      Response_Data = "xml="&xml&"&url="&url&"&domain="&domain&"&cert=1"
      Else
      Response_Data = "xml="&xml&"&url="&url&"&domain="&domain&"&cert=0"
      End If
      End Function

      '獲取POST返回數據
      Function PostURL(url,PostStr)
      dim http
      Set http = Server.CreateObject(xmlhttp)
      With http
      .Open "POST", url, false ,"" ,""
      .setRequestHeader "Content-Type","application/x-www-form-urlencoded"
      .Send(PostStr)
      PostURL = .responsetext
      End With
      Set http = Nothing
      End Function

      '獲取GET返回數據
      Function GetURL(url)
      dim http
      set http=server.createobject(xmlhttp)
      http.open "GET",url,false
      http.setRequestHeader "If-Modified-Since","0"
      http.send()
      GetURL=http.responsetext
      set http=nothing
      End Function

      'XML請求
      Function HttpSendSSL(byval sUrl, byval xmlBody)
      On Error Resume Next
      Dim xmlhttp,xmlget
      Set xmlhttp = Server.CreateObject("WinHttp.WinHttpRequest.5.1")
      xmlhttp.Open "POST", sUrl, False
      xmlhttp.SetClientCertificate("LOCAL_MACHINE\My\MMPay")
      'xmlhttp.setRequestHeader "Content-Type", "text/xml; charset=GB2312"
      'xmlhttp.setRequestHeader "Content-Length", Len(xmlBody)
      xmlhttp.send(xmlBody)
      If Err.Number <> 0 Then
      HttpSendSSL = Err.Description
      Exit Function
      End If
      xmlget = bin2str(xmlhttp.responseBody)
      Set xmlhttp = Nothing
      HttpSendSSL = xmlget
      End Function

      '二進制流轉換
      Function bin2str(byval binstr)
      Const adTypeBinary = 1
      Const adTypeText = 2
      Dim BytesStream,StringReturn
      Set BytesStream = Server.CreateObject("ADODB.Stream")
      With BytesStream
      .Type = adTypeText
      .Open
      .WriteText binstr
      .Position = 0
      .Charset = "UTF-8"
      .Position = 2
      StringReturn = .ReadText
      .close
      End With
      Set BytesStream = Nothing
      bin2str = StringReturn
      End Function

      '截取JSON數據
      Dim sc4Json
      Sub InitScriptControl
      Set sc4Json = Server.CreateObject("MSScriptControl.ScriptControl")
      sc4Json.Language = "JavaScript"
      sc4Json.AddCode "var itemTemp=null;Function getJSArray(arr, index){itemTemp=arr[index];}"
      End Sub
      Function getJSONObject(strJSON)
      sc4Json.AddCode "var jsonObject = " & strJSON
      Set getJSONObject = sc4Json.CodeObject.jsonObject
      End Function
      Sub getJSArrayItem(objDest,objJSArray,index)
      On Error Resume Next
      sc4Json.Run "getJSArray",objJSArray, index
      Set objDest = sc4Json.CodeObject.itemTemp
      If Err.number=0 Then Exit Sub
      objDest = sc4Json.CodeObject.itemTemp

      End Sub

      Copyright © 2007-2024 安信科技(十五周年紀念版) All Rights Reserved  備案號:蘇ICP備15047094號-3 
      網站首頁 |  新聞資訊 |  服務項目 |  軟件產品 |  試用下載 |  需求提交 |  模版建站 |  關于安信 |  產品授權 |  聯系我們 |  定制開發 | 
      服務熱線:181-1200-5550  客服QQ: 120094883  | 郵箱:120094883#qq.com(#改@)