(21.09.2023, 05:06)admin Wrote: You are missing the content-length header. It is also advisable to use json.encode to create JSON strings instead of manual creation which can lead to errors.
I've added the header, with it in I get a internal server error
This should be correct, right?
Code:
mac = io.readfile('/sys/class/net/eth0/address'):trim()
require('socket.http')
require('json')
require("ltn12")
jsoncontent = json.encode({fault = true,instID= "teststring",value= 22,name = "stringname"})
body = jsoncontent
response = {}
log("test")
socket.http.request({
url = "http://192.168.1.69/docs",
method = 'POST',
sink = ltn12.sink.table(response),
headers = {
["Content-Length"] = string.len(body),
['accept'] = 'application/json',
['content-type'] = 'application/json',
},
source = ltn12.source.string(body),
})
log(response,body)