diff --git a/example/primary/index.html b/example/primary/index.html new file mode 100644 index 0000000000000000000000000000000000000000..92daa44e08d8fa70011edf6332dae52e426c4fe0 --- /dev/null +++ b/example/primary/index.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<meta name="viewport" content="initial-scale=1.0; maximum-scale=1.0; width=device-width;"> +<title> +BrowserID Example Primary +</title> +<style type="text/css"> +body { margin: auto; font: 13px/1.5 Helvetica, Arial, 'Liberation Sans', FreeSans, sans-serif; } +.title { font-size: 2em; font-weight: bold; text-align: center; margin: 1.5em; } +.intro { font-size: 1.2em; width: 600px; margin: auto; } +</style> +</head> +<body> +<div class="title"> + Example BrowserID Primary +</div> + +<div class="intro"> + An example BrowserID Primary identity authority. Useful for local testing and development. +</div> +</body> +</html> diff --git a/scripts/run_locally.js b/scripts/run_locally.js index 979a85aeca31bde6d1b5b92857df2efaaa758bd4..3d41ef3e383c1e866cce85552341d742eb3a0814 100755 --- a/scripts/run_locally.js +++ b/scripts/run_locally.js @@ -29,6 +29,11 @@ var daemonsToRun = { PORT: 10001, HOST: HOST }, + example_primary: { + path: path.join(__dirname, "..", "scripts", "serve_example_primary.js"), + PORT: 10005, + HOST: HOST + }, browserid: { PORT: 10002, HOST: HOST diff --git a/scripts/serve_example_primary.js b/scripts/serve_example_primary.js new file mode 100755 index 0000000000000000000000000000000000000000..d4d3dd48b6bb4ef0edd11d28b366926e623406cc --- /dev/null +++ b/scripts/serve_example_primary.js @@ -0,0 +1,36 @@ +#!/usr/bin/env node + +// finally, let's run a tiny webserver for the example code. +const +express = require('express'), +path = require('path'), +urlparse = require('urlparse'), +postprocess = require('postprocess'), +querystring = require('querystring'); + +var exampleServer = express.createServer(); + +exampleServer.use(express.logger({ format: 'dev' })); + +if (process.env['BROWSERID_URL']) { + var burl = urlparse(process.env['BROWSERID_URL']).validate().normalize().originOnly().toString(); + console.log('using browserid server at ' + burl); + + exampleServer.use(postprocess.middleware(function(req, buffer) { + return buffer.toString().replace(new RegExp('https://browserid.org', 'g'), burl); + })); +} + +exampleServer.use(express.static(path.join(__dirname, "..", "example", "primary"))); + +exampleServer.use(express.bodyParser()); + +// XXX: implement apis here + +exampleServer.listen( + process.env['PORT'] || 10001, + process.env['HOST'] || process.env['IP_ADDRESS'] || "127.0.0.1", + function() { + var addy = exampleServer.address(); + console.log("running on http://" + addy.address + ":" + addy.port); + });