Having updates on the issue.
$.ajax is configured by default to send POST:
$.ajaxSetup({
type: 'POST',
});
But inside setInterval it sends GET.
And if I specify POST directly in $.ajax then it won't work at all:
$.ajax({
type: 'POST',
url: '/my/url',
});