I'm hoping someone can help me about retrieving data from the Appery database through .net. I have been able to get data without using a query filter as below
Dim request As HttpWebRequest
Dim response As HttpWebResponse = Nothing
request = DirectCast(Net.WebRequest.Create("https://api.appery.io/rest/1/db/colle..."), HttpWebRequest)
request.Headers.Add("X-Appery-Database-Id", "54f7de62xxxxxxxxxxxxxx")
request.Headers.Add("X-Appery-Master-Key", "eadcda63-5cfxxxxxxxxxxx")
request.ContentType = "application/json"
request.Method = "GET"
Code: Select all
' Get response
response = DirectCast(request.GetResponse(), HttpWebResponse)
My issue is if I try to pass a where clause to the data I get Bad Request ("{"code":"DBSP260","description":"Object must be present in the request body"}") returned. This is my code to try and pass parameters which has to be a POST method...
Dim request As HttpWebRequest
Dim response As HttpWebResponse = Nothing
request = DirectCast(Net.WebRequest.Create("https://api.appery.io/rest/1/db/colle..."), HttpWebRequest)
request.Headers.Add("X-Appery-Database-Id", "54f7de62xxxxxxxxxxxxxx")
request.Headers.Add("X-Appery-Master-Key", "eadcda63-5cfxxxxxxxxxxx")
request.ContentType = "application/json"
request.Method = "POST"
Code: Select all
Dim params As String = """where"":{""_id"":""55af51f1e4b0f840f33b6a49""}"
Dim requestWriter As StreamWriter = New StreamWriter(request.GetRequestStream())
Dim reqWriter As Stream = request.GetRequestStream
requestWriter.Write(params)
requestWriter.Close()
Code: Select all
' Get response
response = DirectCast(request.GetResponse(), HttpWebResponse)
I have been going around in circles so I'm hoping someone can help about the correct way to pass parameters with this request method. I have also tried adding the parameters tag in the where clause
"parameters:{where:{""_id"":""55af51f1e4b0f840f33b6a49""}}"
but get same result of Bad Request ("{"code":"DBSP260","description":"Object must be present in the request body"}")
.
I am able to do it fine in server code in javascript using XHR.send
Thanks!