I have local file paths (in node.js) and I need to convert them into file://
urls.
I'm now looking at https://en.wikipedia.org/wiki/File_URI_scheme and I feel this must be a solved problem and somebody must have a snippet or npm module to do this.
But then I try to search npm for this but I get so much cruft it is not funny (file, url and path are a search hit in like every package ever :) Same with google and SO.
I can do this naïve approach
site = path.resolve(site);
if (path.sep === '\\') {
site = site.split(path.sep).join('/');
}
if (!/^file:\/\//g.test(site)) {
site = 'file:///' + site;
}
But I'm pretty sure that is not the way to go.
Use the
file-url
module.Usage:
Also works in Windows. And the code is simple enough, in case you want to just take a snippet:
Node.js v10.12.0 just got two new methods to solve this issue:
Documentation
I had a similar issue, but the solution ended up being to use the new
WHATWG URL
implementation: