You must use the async versions of the http post methods in order to get the return xml data. The synchronous POST calls do not return the xml data. The return data can be read from the roUrlEvent returned.
Example:
Function post_req_resp(url As String) as dynamic
obj = CreateObject("roUrlTransfer")
obj.SetPort(CreateObject("roMessagePort"))
obj.SetUrl(url)
timeout% = 1500
num_retries% = 5
str = ""
while num_retries% > 0
if (obj.AsyncPostFromString(""))
event = wait(timeout%, obj.GetPort())
if type(event) = "roUrlEvent"
respCode = event.GetResponseCode()
if respCode = 200 then
return event.GetString()
else
return invalid
end if
elseif event = invalid
obj.AsyncCancel()
' Reset connection on timeout
obj = CreateObject("roUrlTransfer")
obj.SetPort(CreateObject("roMessagePort"))
obj.SetUrl(url)
timeout% = 2 * timeout%
else
print "roUrlTransfer::AsyncGetToString(): unknown event"
endif
endif
num_retries% = num_retries% - 1
end while
return invalid
End Function
--Kevin