|
|
(Visual Basic) HTTP POST JSON
Demonstrates how to send a JSON POST and get the JSON response.
Download Chilkat HTTP ActiveX
Dim req As New ChilkatHttpRequest
Dim http As New ChilkatHttp
Dim success As Long
' Any string unlocks the component for the 1st 30 days.
success = http.UnlockComponent("Anything for 30-day trial")
If (success <> 1) Then
Text1.Text = Text1.Text & http.LastErrorText & vbCrLf
Exit Sub
End If
' This example duplicates the HTTP POST shown at
' http://json.org/JSONRequest.html
' Specifically, the request to be sent looks like this:
'
POST /request HTTP/1.1
Accept: application/jsonrequest
Content-Encoding: identity
Content-Length: 72
Content-Type: application/jsonrequest
Host: json.penzance.org
{"user":"doctoravatar@penzance.com","forecast":7,"t":"vlIj","zip":94089}
' First, remove default header fields that would be automatically
' sent. (These headers are harmless, and shouldn't need to
' be suppressed, but just in case...)
http.AcceptCharset = ""
http.UserAgent = ""
http.AcceptLanguage = ""
' Suppress the Accept-Encoding header by disallowing
' a gzip response:
http.AllowGzip = 0
' If a Cookie needs to be added, it may be added by calling
' AddQuickHeader:
http.AddQuickHeader "Cookie","JSESSIONID=1234"
Dim jsonText As String
jsonText = "{""user"":""doctoravatar@penzance.com"",""forecast"":7,""t"":""vlIj"",""zip"":94089}"
' To use SSL/TLS, simply use "https://" in the URL.
' IMPORTANT: Make sure to change the URL, JSON text,
' and other data items to your own values. The URL used
' in this example will not actually work.
Dim resp As ChilkatHttpResponse
Set resp = http.PostJson("http://json.penzance.org/request",jsonText)
If (resp Is Nothing ) Then
Text1.Text = Text1.Text & http.LastErrorText & vbCrLf
Else
' Display the JSON response.
Text1.Text = Text1.Text & resp.BodyStr & vbCrLf
End If
|