使用 VB.Net 将 curl POST 命令转换为 HttpClient 代码

问题描述 投票:0回答:0

我有这个使用 curl 的旧代码:

writer.WriteLine("curl.exe -s -X POST --cookie-jar " & My.Settings.curlPath & " -F ""username=webterm"" -F ""pwd=webterm"" http://" & My.Settings.ipCCN & "/goform/UserLogin")

writer.WriteLine("curl.exe -s --cookie " & My.Settings.curlPath & " --cookie-jar " & My.Settings.curlPath & " -F 'secondi=" & My.Settings.secondi & "' -F 'decimi=" & My.Settings.decimi & "' -F 'outputNumber=" & My.Settings.digout & "' http://" & My.Settings.ipCCN & "/goform/con_SetOutput")

其中:curlPath是digout/secondi/decimi的可执行路径 我必须传递的整数值 inputipCCN 是要调用的 ip 地址

我需要使用带 POST 的 http 客户端进行相同的调用,我该怎么做?

我有这个功能作为初始示例,我想根据需要进行编辑:

Public Async Function faiChiamataAPI(requestUri As String) As Task(Of String)
        Using client As New HttpClient()
            Dim URI As Uri = New Uri(requestUri)
            Dim auth = Encoding.ASCII.GetBytes(String.Format("{0}:{1}", My.Settings.user, My.Settings.password))
            client.DefaultRequestHeaders.Authorization = New Headers.AuthenticationHeaderValue("Basic", Convert.ToBase64String(auth))
            Dim response = Await client.GetAsync(URI)
            Dim content = response.Content
            Return Await content.ReadAsStringAsync()
        End Using
    End Function

我不需要从调用的 ip 读取任何答案,它是一个必须执行由我的 http 请求触发的内部功能的设备。

vb.net http-post httprequest
© www.soinside.com 2019 - 2024. All rights reserved.