mirror of
https://github.com/less/less.js.git
synced 2026-05-01 03:00:22 -04:00
support https and 301 redirects in imports. fixes #1103
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
var path = require('path'),
|
||||
sys = require('util'),
|
||||
url = require('url'),
|
||||
http = require('http'),
|
||||
request = require('request'),
|
||||
fs = require('fs');
|
||||
|
||||
var less = {
|
||||
@@ -146,26 +146,21 @@ less.Parser.importer = function (file, paths, callback, env) {
|
||||
path: urlObj.pathname + (urlObj.search||'')
|
||||
};
|
||||
|
||||
http.get(req, function (res) {
|
||||
var body = '';
|
||||
res.on('data', function (chunk) {
|
||||
body += chunk.toString();
|
||||
});
|
||||
res.on('end', function () {
|
||||
if (res.statusCode === 404) {
|
||||
callback({ type: 'File', message: "resource '" + urlStr + "' was not found\n" });
|
||||
}
|
||||
if (!body) {
|
||||
sys.error( 'Warning: Empty body (HTTP '+ res.statusCode + ') returned by "' + urlStr +'"' );
|
||||
}
|
||||
pathname = urlStr;
|
||||
dirname = urlObj.protocol +'//'+ urlObj.host + urlObj.pathname.replace(/[^\/]*$/, '');
|
||||
parseFile(null, body);
|
||||
});
|
||||
}).on('error', function (err) {
|
||||
callback({ type: 'File', message: "resource '" + urlStr + "' gave this Error:\n "+ err +"\n" });
|
||||
request.get(urlStr, function (error, res, body) {
|
||||
if (res.statusCode === 404) {
|
||||
callback({ type: 'File', message: "resource '" + urlStr + "' was not found\n" });
|
||||
return;
|
||||
}
|
||||
if (!body) {
|
||||
sys.error( 'Warning: Empty body (HTTP '+ res.statusCode + ') returned by "' + urlStr +'"' );
|
||||
}
|
||||
if (error) {
|
||||
callback({ type: 'File', message: "resource '" + urlStr + "' gave this Error:\n "+ error +"\n" });
|
||||
}
|
||||
pathname = urlStr;
|
||||
dirname = urlObj.protocol +'//'+ urlObj.host + urlObj.pathname.replace(/[^\/]*$/, '');
|
||||
parseFile(null, body);
|
||||
});
|
||||
|
||||
} else {
|
||||
|
||||
// TODO: Undo this at some point,
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
"main" : "./lib/less/index",
|
||||
"directories" : { "test": "./test" },
|
||||
"engines" : { "node": ">=0.4.2" },
|
||||
"optionalDependencies" : { "ycssmin": ">=1.0.1", "mime": "1.2.x" },
|
||||
"optionalDependencies" : { "ycssmin": ">=1.0.1", "mime": "1.2.x", "request":">=2.12.0" },
|
||||
"devDependencies" : { "diff": "~1.0" },
|
||||
"scripts": {
|
||||
"test": "make test"
|
||||
|
||||
Reference in New Issue
Block a user