Skip to content

Instantly share code, notes, and snippets.

@DragonflyNet67
Forked from six519/JsonPost.vb
Created March 4, 2019 15:19
Show Gist options
  • Save DragonflyNet67/b8503ca286f3f6d17445ebcddc688106 to your computer and use it in GitHub Desktop.
Save DragonflyNet67/b8503ca286f3f6d17445ebcddc688106 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