There's a way to get your async methods to return an object that you
can use to cancel an in-flight RPC. I can never remember the name of
the type, but you just change your async method to return
RequestBuilder (I think) instead of void. It leaves the invocation of
send() up to you, but the request is pre-built so it's not much extra
work, and it gives you the opportunity to play with headers and invoke
cancel(). If you search the history of this list, you might find a
definitive answer on the type you need and, if not, try the history of
the contributor's list.
Ian