Foxtable(狐表)用户栏目专家坐堂 → [求助]关于https的问题,请问以下代码狐表中怎么写?


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

主题:[求助]关于https的问题,请问以下代码狐表中怎么写?

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


加好友 发短信
等级:一尾狐 帖子:480 积分:5767 威望:0 精华:0 注册:2016/1/28 2:59:00
[求助]关于https的问题,请问以下代码狐表中怎么写?  发帖心情 Post By:2024/6/30 1:08:00 [只看该作者]



        If host.Contains("https://") Then
            ServicePointManager.ServerCertificateValidationCallback = New RemoteCertificateValidationCallback(AddressOf CheckValidationResult)  
            httpRequest = CType(WebRequest.CreateDefault(New Uri(url)), HttpWebRequest)
        Else
            httpRequest = CType(WebRequest.Create(url), HttpWebRequest)
        End If


请上上面红色字体的 狐表代码 应该怎么写呢?


[此贴子已经被作者于2024/6/30 21:56:23编辑过]

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


加好友 发短信
等级:一尾狐 帖子:480 积分:5767 威望:0 精华:0 注册:2016/1/28 2:59:00
  发帖心情 Post By:2024/6/30 21:56:00 [只看该作者]

求助 求助

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


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

补上命名空间
Net.ServicePointManager.ServerCertificateValidationCallback = New Net.Security.RemoteCertificateValidationCallback(AddressOf CheckValidationResult)
httpRequest = CType(Net.WebRequest.CreateDefault(New Uri(url)), Net.HttpWebRequest)
[此贴子已经被作者于2024/6/30 22:30:21编辑过]

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


加好友 发短信
等级:一尾狐 帖子:480 积分:5767 威望:0 精华:0 注册:2016/1/28 2:59:00
  发帖心情 Post By:2024/6/30 23:05:00 [只看该作者]

以下是C#转.net后的代码

Class SurroundingClass
    Private Const host As String = "https://ali-deliver.showapi.com"
    Private Const path As String = "/showapi_expInfo"
    Private Const method As String = "GET"
    Private Const appcode As String = "你自己的AppCode"

    Private Shared Sub Main(ByVal args As String())
        Dim querys As String = "com=zhongtong&nu=535962308717&receiverPhone=receiverPhone&senderPhone=senderPhone"
        Dim bodys As String = ""
        Dim url As String = host + path
        Dim httpRequest As HttpWebRequest = Nothing
        Dim httpResponse As HttpWebResponse = Nothing

        If 0 < querys.Length Then
            url = url & "?" + querys
        End If

        If host.Contains("https://") Then
            ServicePointManager.ServerCertificateValidationCallback = New RemoteCertificateValidationCallback(AddressOf CheckValidationResult)
            httpRequest = CType(WebRequest.CreateDefault(New Uri(url)), HttpWebRequest)
        Else
            httpRequest = CType(WebRequest.Create(url), HttpWebRequest)
        End If

        httpRequest.Method = method
        httpRequest.Headers.Add("Authorization", "APPCODE " & appcode)

        If 0 < bodys.Length Then
            Dim data As Byte() = Encoding.UTF8.GetBytes(bodys)

            Using stream As Stream = httpRequest.GetRequestStream()
                stream.Write(data, 0, data.Length)
            End Using
        End If

        Try
            httpResponse = CType(httpRequest.GetResponse(), HttpWebResponse)
        Catch ex As WebException
            httpResponse = CType(ex.Response, HttpWebResponse)
        End Try

        Console.WriteLine(httpResponse.StatusCode)
        Console.WriteLine(httpResponse.Method)
        Console.WriteLine(httpResponse.Headers)
        Dim st As Stream = httpResponse.GetResponseStream()
        Dim reader As StreamReader = New StreamReader(st, Encoding.GetEncoding("utf-8"))
        Console.WriteLine(reader.ReadToEnd())
        Console.WriteLine(vbLf)
    End Sub

    Public Shared Function CheckValidationResult(ByVal sender As Object, ByVal certificate As X509Certificate, ByVal chain As X509Chain, ByVal errors As SslPolicyErrors) As Boolean
        Return True
    End Function
End Class

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


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/30 23:12:00 [只看该作者]

1、全部补上命名空间
2、所有Private 改为 Public 

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


加好友 发短信
等级:一尾狐 帖子:480 积分:5767 威望:0 精华:0 注册:2016/1/28 2:59:00
  发帖心情 Post By:2024/7/1 1:39:00 [只看该作者]

但是 这个没有调用sdk的

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


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/1 8:26:00 [只看该作者]

哪有啥问题?

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


加好友 发短信
等级:一尾狐 帖子:480 积分:5767 威望:0 精华:0 注册:2016/1/28 2:59:00
  发帖心情 Post By:2024/7/1 17:43:00 [只看该作者]

不是调用SDK才需要设置 命名空间 的吗?


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


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/1 20:08:00 [只看该作者]

错误!所有.net的类型都需要命名空间,Foxtable只是使用了.net部分功能,所以并没有把所有.net的dll以及对应的命名空间都引用到Foxtable里,因此需要用到Foxtable没有的功能的时候基本都需要添加对应的命名空间

 回到顶部