Skip to content

Instantly share code, notes, and snippets.

@cakesmith
Created September 12, 2016 23:01
Show Gist options
  • Save cakesmith/ddacbb7ef4e165ce9a9ea1aefbd13500 to your computer and use it in GitHub Desktop.
Save cakesmith/ddacbb7ef4e165ce9a9ea1aefbd13500 to your computer and use it in GitHub Desktop.
Render and return html
/* global phantom */
"use strict";
var port, server, service,
system = require('system');
if (system.args.length !== 2) {
console.log('Usage: phantomjs renderbuddy.js <portnumber>');
phantom.exit(1);
} else {
port = system.args[1];
server = require('webserver').create();
service = server.listen(port, function (request, response) {
if(request.method === 'POST') {
console.log('Request at ' + new Date());
console.log(JSON.stringify(request, null, 4));
response.statusCode = 200;
response.headers = {
'Cache': 'no-cache',
'Content-Type': 'text/html'
};
var page = require('webpage').create();
page.open(request.postRaw, function(status) {
if (status === 'success') {
response.write(page.content);
} else {
console.log("Error loading webpage: " + request.post)
}
response.close();
});
}
});
if (service) {
console.log('Web server running on port ' + port);
} else {
console.log('Error: Could not create web server listening on port ' + port);
phantom.exit();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment