korroziea
2 years agoChannel Surfer
POST request failure with code -10001
Can someone tell me where the mistake is? And what the resone?
sub init()
print "uriHandler.brs - [init]"
m.port = createObject("roMessagePort")
m.top.observeField("request", m.port)
m.top.functionName = "go"
m.top.control = "RUN"
m.constants = CreateObject("roSGNode", "constants")
end sub
function go() as Void
print "uriHandler.brs - [go]"
while true
msg = wait(0, m.port)
mt = type(msg)
if mt = "roSGNodeEvent"
if msg.getField() = "request"
if addRequest(msg.getData()) <> true then print "Invalid request"
else
print "Error: unrecognized field '"; msg.getField() ; "'"
end if
else if mt = "roUrlEvent"
processResponse(msg)
else
print "Error: unrecognized event type '"; mt ; "'"
end if
end while
end function
function addRequest(request as Object) as Boolean
print "uriHandler.brs - [addRequest]"
if type(request) = "roAssociativeArray"
context = request.context
if type(context) = "roSGNode"
parameters = context.parameters
if type(parameters) = "roAssociativeArray"
if parameters.lookUp("name") <> invalid
print "DeviceID uri"
uri = m.constants.uri_get_deviceID
else if parameters.lookUp("id") <> invalid
print "Token uri"
uri = m.constants.uri_get_token
else
print "Error: unrecognized parameter"
end if
end if
urlXfer = CreateObject("roUrlTransfer")
urlXfer.setUrl(uri)
' print uri
urlXfer.setPort(m.port)
urlXfer.retainBodyOnError(true)
byteArray = CreateObject("roByteArray")
byteArray.fromAsciiString("test@test.com:1111")
' print byteArray.ToBase64String()
urlXfer.addHeader("authorization", "Basic " + byteArray.ToBase64String())
urlXfer.addHeader("Content-Type", "application/json")
urlXfer.addHeader("Accept", "application/json")
requestBody = formatJson({"name":"Roku"})
' urlXfer.setRequest("POST")
ok = urlXfer.asyncPostFromString(requestBody)
print ok
end if
end if
return true
end function
sub processResponse(msg as Object)
print "uriHandler.brs - [processResponse]"
code = msg.getResponseCode()
reason = msg.getFailureReason()
print code
print reason
end sub
Output to the console:
login.brs - [init]
uriHandler.brs - [init]
uriHandler.brs - [go]
login.brs - [buttonPressed]
login.brs - [onKeyboardOKPressed]
login.brs - [buttonPressed]
login.brs - [onKeyboardOKPressed]
login.brs - [onConfirmPressed]
login.brs - [loginClient]
login.brs - [makeRequest]
uriHandler.brs - [addRequest]
DeviceID uri
true
uriHandler.brs - [processResponse]
-10001
Cancelled
Also I would like to invite you to the very supportive Roku Developers Slack community where you can meet like minded Roku developers and get quick answers on future problems
https://join.slack.com/t/rokudevelopers/shared_invite/zt-22n9u11c1-zoqCczrSTRiMxid4kWBPRA
just post in the #general channel to get started 🙂