Я не верю, что сейчас кто-то фактически использует блокировку вызовов в JS.Я уверен, что это не блокирующий вызов, может быть, они просто блокируют ввод пользователя, пока данные не будут получены.Мы делаем это и в нашем приложении.Существуют различные способы заблокировать / разблокировать пользовательский ввод, например, вы можете показать невидимый фрейм поверх вашей страницы.Другим способом является предварительный просмотр и отмена пользовательских событий.Это пример (GWT):
public void onPreviewNativeEvent(NativePreviewEvent event) {
event.cancel();
}