45 lines
1.0 KiB
JavaScript
45 lines
1.0 KiB
JavaScript
|
"use strict";
|
||
|
|
||
|
/**
|
||
|
* $ browser-sync reload <options>
|
||
|
*
|
||
|
* This commands starts the Browsersync servers
|
||
|
* & Optionally UI.
|
||
|
*
|
||
|
* @param opts
|
||
|
* @returns {Function}
|
||
|
*/
|
||
|
module.exports = function (opts) {
|
||
|
|
||
|
var flags = opts.cli.flags;
|
||
|
if (!flags.url) {
|
||
|
flags.url = "http://localhost:" + (flags.port || 3000);
|
||
|
}
|
||
|
var proto = require("../http-protocol");
|
||
|
var scheme = flags.url.match(/^https/) ? "https" : "http";
|
||
|
var args = {method: "reload"};
|
||
|
|
||
|
if (flags.files) {
|
||
|
args.args = flags.files;
|
||
|
}
|
||
|
|
||
|
var url = proto.getUrl(args, flags.url);
|
||
|
|
||
|
if (scheme === "https") {
|
||
|
process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";
|
||
|
}
|
||
|
|
||
|
require(scheme).get(url, function (res) {
|
||
|
res.on("data", function () {
|
||
|
if (res.statusCode === 200) {
|
||
|
opts.cb(null, res);
|
||
|
}
|
||
|
});
|
||
|
}).on("error", function (err) {
|
||
|
if (err.code === "ECONNREFUSED") {
|
||
|
err.message = "Browsersync not running at " + flags.url;
|
||
|
}
|
||
|
return opts.cb(err);
|
||
|
});
|
||
|
};
|