async-ness of your front-end methods is unrelated to the
async-ness of your controller methods. You can have an
async front-end method calling a non-
async controller method, or a non-
async front-end method calling an
async controller method.
The front-end code is making a network request. It doesn't know or care how that request was fulfilled. The server could be using a synchronous method, an
async method, or waiting for a carrier-pigeon. The front-end just needs to wait for the response.
Having said that, your front-end method should always be
async if possible. It's making a network request, so you don't want to block a thread waiting for that to complete.
"These people looked deep within my soul and assigned me a number based on the order in which I joined."