Вы используете асинхронный запрос
request.open('POST', URL, true); // <- true means asynchronous
для асинхронного запроса, вы также должны определить
req.onreadystatechange = function () {
if (req.readyState == 4) {
if(req.status == 200)
console.log(req.responseText);
else
console.log("Error loading page\n");
}
};
document.write может выполнять вывод только во время загрузки html.Таким образом, возможно, что ваш запрос в порядке, но вы не можете его увидеть.
Вы также можете попробовать (только для отладки) синхронный запрос
request.open('POST', URL, false);
и console.log, чтобы увидеть вывод вконсоль браузера или вместо document.write используйте эту
document.body.innerHTML += returnJSON