Il tuo solo problema è che php si appoggia ad AJAX per le chiamate asincrone client->server?
Fa lo stesso anche Node, non è che i dati dal browser ci arrivano per magia a Node.

Poi magari hai letto cose tipo Axios, fetch o compagnia bella, ma fanno la stessa cosa di AJAX, le chiamate, asincrone o meno, vanno sempre fatte per comunicazioni tra client e server.