I am in the process of designing an SDK (in Golang) with blocking functionality, which should be run asynchronously with the result being returned via a callback.
I have been playing with the Gorilla Toolkit RPC library which is great but I don't see a way of returning values of async calls.
Perhaps I am missing something and the RPC model does not support async calls, by that I mean all calls are blocking, even for a long time. If that is the case, i'm assuming there is no HTTP timeout then?
How can I implement async RPC calls with a return value being returned via a callback.
For clarification: I cannot use the typical Go Channel method for callbacks as I will be calling the RPC from another language over HTTP. So my question is, is there a way to implement callbacks over HTTP when doing RPC or should the calls just block, even for a long time until a value is ready to be returned?