UNPKG

node-deeplink

Version:

Easily create an endpoint in your web server that redirects deep links to mobile apps

39 lines (30 loc) 766 B
const Browser = require('zombie'); const express = require('express'); const deeplink = require('../..'); const noop = () => {}; module.exports = function(ua) { const obj = {}; Browser.localhost('localhost', 3000); const browser = new Browser(); browser.userAgent = ua; const app = express(); let server; obj.go = (url, opts, callback) => { app.get('/', deeplink(opts)); server = app.listen(3000); let loc = 0; browser.on('event', (e, target) => { if (target.location && e.type === 'load') { if (loc === 1) { callback(target.location.href); } loc++; } }); browser.visit(url ? `/?url=${url}` : '/', noop); }; obj.close = () => { server.close(); }; return obj; };