Communicating through Ajax requests
Ajax is a loaded word. For the purposes of this chapter, I want you to think of it only as a means to fetch data from a server and send data to it using HTTP requests.
We've just seen how we can respond to HTTP requests, so we're half-way there! At this point, we can inspect requests to determine the URL and method of each HTTP request. A browser may be requesting something like GET http://127.0.0.1:3000/pages
to get all the pages. So, if the method matches POST
and the path matches /pages
, then we can respond with the appropriate pages.
Luckily for us, others have been down this path before. Projects such as ExpressJS have sprung up to provide some scaffolding for us. Let's install ExpressJS:
$ npm install --save express
Now, we can convert our simple HTTP server to be based on ExpressJS:
var app = require("express")(); var server = require("http").Server(app); app.get("/", function (request, response) { response.send( require("./hello-world...