Sample code for 30+ languages & platforms
VBScript

HTTP PUT JSON

See more HTTP Examples

Demonstrates how to send a JSON PUT and get the JSON response body.

Chilkat VBScript Downloads

VBScript
Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
'Create a Unicode (utf-16) output text file.
Set outFile = fso.CreateTextFile("output.txt", True, True)

success = 0

' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.

set req = CreateObject("Chilkat.HttpRequest")
set http = CreateObject("Chilkat.Http")

' The PUT request to be sent will look like this:

' PUT /request HTTP/1.1
' Content-Type: application/jsonrequest
' Cookie: JSESSIONID=1234
' Content-Encoding: identity
' Host: json.penzance.org
' Accept: application/jsonrequest
' Accept-Encoding:
' Content-Length: 72
' 
' {"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...
http.SetRequestHeader "Cookie","JSESSIONID=1234"

' Add the Content-Encoding: identity header.
http.SetRequestHeader "Content-Encoding","identity"

' Modify the default "Accept" header:
http.Accept = "application/jsonrequest"

jsonText = "{""user"":""doctoravatar@penzance.com"",""forecast"":7,""t"":""vlIj"",""zip"":94089}"

' 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.

set resp = CreateObject("Chilkat.HttpResponse")
success = http.HttpStr("PUT","http://json.penzance.org/request",jsonText,"utf-8","application/jsonrequest",resp)
If (success = 0) Then
    outFile.WriteLine(http.LastErrorText)
    WScript.Quit
End If

outFile.WriteLine("Response status code: " & resp.StatusCode)
outFile.WriteLine("Response JSON:")
outFile.WriteLine(resp.BodyStr)

outFile.Close