Foxtable(狐表)用户栏目专家坐堂 → [求助]这个api怎么写?圆通空单api


  共有2217人关注过本帖树形打印复制链接

主题:[求助]这个api怎么写?圆通空单api

帅哥哟,离线,有人找我吗?
chen37280600
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1265 积分:7844 威望:0 精华:4 注册:2017/12/31 14:53:00
  发帖心情 Post By:2020/3/1 10:59:00 [显示全部帖子]

我只能告诉你避开一个坑。狐表的MD5加密是24位的,市面上接口流行的是32位,这里需要你自己重新定义一个MD5出来。

全局代码添加如下:
'通过MsgBox(MD5Encrypt2("12345678", 32)) 调用

Public Function MD5Encrypt2(ByVal strSource As String, ByVal Code As Int16) As String
Dim dataToHash As Byte() = (New System.Text.ASCIIEncoding).GetBytes(strSource)
Dim hashvalue As Byte() = CType(System.Security.Cryptography.CryptoConfig.CreateFromName("MD5"), System.Security.Cryptography.HashAlgorithm).ComputeHash(dataToHash)
Dim ATR As String = ""
Dim i As Integer
Select Case Code
    Case 16      '选择16位字符的加密结果
        For i = 4 To 11
            ATR &= Hex(hashvalue(i)).PadLeft(2, "0").ToLower
            
        Next
    Case 32      '选择32位字符的加密结果
        For i = 0 To 15
            ATR &= Hex(hashvalue(i)).PadLeft(2, "0").ToLower
        Next
    Case Else       'Code错误时,返回全部字符串,即32位字符
        For i = 0 To 15
            ATR &= Hex(hashvalue(i)).PadLeft(2, "0").ToLower
        Next
End Select
Return ATR
End Function

 回到顶部