Skip to content

Instantly share code, notes, and snippets.

@ch4t88
Forked from six519/JsonPost.vb
Created June 22, 2022 13:48
Show Gist options
  • Save ch4t88/5e77f18df5f6eb3be41fd31ea77ca1c0 to your computer and use it in GitHub Desktop.
Save ch4t88/5e77f18df5f6eb3be41fd31ea77ca1c0 to your computer and use it in GitHub Desktop.
JSON HTTP POST Request In Visual Basic .NET
'Install Newtonsoft.json
'-----------------------
'
'PM> Install-Package Newtonsoft.Json -Version 6.0.8
'Sample Usage
'------------
'Dim jsonPost As New JsonPost("http://192.168.254.104:8000")
'Dim dictData As New Dictionary(Of String, Object)
'dictData.Add("test_key", "test_value")
'jsonPost.postData(dictData)
Imports Newtonsoft.Json
Imports System.Net
Imports System.Text
Public Class JsonPost
Private urlToPost As String = ""
Public Sub New(ByVal urlToPost As String)
Me.urlToPost = urlToPost
End Sub
Public Function postData(ByVal dictData As Dictionary(Of String, Object)) As Boolean
Dim webClient As New WebClient()
Dim resByte As Byte()
Dim resString As String
Dim reqString() As Byte
Try
webClient.Headers("content-type") = "application/json"
reqString = Encoding.Default.GetBytes(JsonConvert.SerializeObject(dictData, Formatting.Indented))
resByte = webClient.UploadData(Me.urlToPost, "post", reqString)
resString = Encoding.Default.GetString(resByte)
Console.WriteLine(resString)
webClient.Dispose()
Return True
Catch ex As Exception
Console.WriteLine(ex.Message)
End Try
Return False
End Function
End Class
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment