Foxtable(狐表)用户栏目专家坐堂 → [求助]这个接口怎么写?详情见下【暂时没问题】快递鸟api


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

主题:[求助]这个接口怎么写?详情见下【暂时没问题】快递鸟api

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


加好友 发短信
等级:六尾狐 帖子:1465 积分:10397 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/11/21 14:46:00 [只看该作者]

Class SurroundingClass
    Private Function base64(ByVal str As String, ByVal charset As String) As String
        Return Convert.ToBase64String(System.Text.Encoding.GetEncoding(charset).GetBytes(str))
    End Function

    Private Function encrypt(ByVal content As String, ByVal keyValue As String, ByVal charset As String) As String
        If keyValue IsNot Nothing Then
            Return base64(MD5(content + keyValue, charset), charset)
        End If

        Return base64(MD5(content, charset), charset)
    End Function
End Class

这样写对吗?

 回到顶部
帅哥哟,离线,有人找我吗?
zto001
  22楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1465 积分:10397 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/11/21 14:47:00 [只看该作者]

然后怎么调用?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  23楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106242 积分:540333 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/11/21 15:08:00 [只看该作者]

Private 改为 public shared

Dim jos As String="{ ""MemberId"": """", ""EnterpriseId"": .........."
hc.FormData.Add("DataSign", SurroundingClass.encrypt(jos ,"AppKey","UTF-8"))

 回到顶部
帅哥哟,离线,有人找我吗?
zto001
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1465 积分:10397 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/11/21 19:08:00 [只看该作者]

他提示这样
图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20191121190710.png
图片点击可在新窗口打开查看



Dim jos As String="{ ""MemberId"": """", ""EnterpriseId"": ""bb253828-0182-4638-988a-639d27cf7f54"", ""Name"": ""张三"", ""Mobile"": 18658275958, ""OrderCode"": ""KDN123456"", ""LogisticCode"": ""95030000"", ""EvaluateType"": 2, ""Target"": { ""MerchantType"": 4, ""MerchantName"": ""张三快递员"", ""MerchantPhone"": ""13500000000"", ""MerchantLink"": """", ""MerchantAddress"": """", ""MerchantPicture"": """" }, ""ComplaintType"": 11, ""ComplaintContent"": ""货物代签丢失,未收到货"" }"


Dim hc As new HttpClient("http://api.kdniao.com/api/dist")
hc.C
hc.FormData.Add("RequestData",jos )  '请求内容,JSON,须和DataType一致.
hc.FormData.Add("EBusinessID","1582246")  '用户ID
hc.FormData.Add("RequestType","1013" )
hc.FormData.Add("DataSign", SurroundingClass.encrypt(jos ,"AppKey","UTF-8"))
hc.FormData.Add("DataType", "2-json" )
Output.Show(hc.GetData)


 回到顶部
帅哥哟,离线,有人找我吗?
zto001
  25楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1465 积分:10397 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/11/22 10:59:00 [只看该作者]

这个错误改怎么解决呢

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106242 积分:540333 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/11/22 14:07:00 [只看该作者]

hc.FormData.Add("DataSign", SurroundingClass.encrypt(jos ,"改为自己的AppKey","UTF-8"))

另外如果项目里使用了多个应用接口,建议全局代码不要有相同的接口函数名称,否则可能会调用了错误的函数

 回到顶部
帅哥哟,离线,有人找我吗?
zto001
  27楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1465 积分:10397 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/11/22 20:59:00 [只看该作者]

Class SurroundingClass
    Public shared Function base64(ByVal str As String, ByVal charset As String) As String
        Return Convert.ToBase64String(System.Text.Encoding.GetEncoding(charset).GetBytes(str))
    End Function


    Public shared Function MD5(ByVal str As String, ByVal charset As String) As String
        Dim buffer As Byte() = System.Text.Encoding.GetEncoding(charset).GetBytes(str)

        Try
            Dim check As System.Security.Cryptography.MD5CryptoServiceProvider
            check = New System.Security.Cryptography.MD5CryptoServiceProvider()
            Dim somme As Byte() = check.ComputeHash(buffer)
            Dim ret As String = ""

            For Each a As Byte In somme

                If a < 16 Then
                    ret += "0" & a.ToString("X")
                Else
                    ret += a.ToString("X")
                End If
            Next

            Return ret.ToLower()
        Catch
            Throw
        End Try
    End Function

    Public shared Function encrypt(ByVal content As String, ByVal keyValue As String, ByVal charset As String) As String
        If keyValue IsNot Nothing Then
            Return base64(MD5(content + keyValue, charset), charset)
        End If

        Return base64(MD5(content, charset), charset)
    End Function

End Class

全局代码

我测试下,如果还有不懂再问

 回到顶部
总数 27 上一页 1 2 3