尝试将google闭包编译器与Angular js一起使用这是我的代码/函数:
$scope.processForm = function(js_code) {
var js_code_lenght = js_code.length;
alert(js_code_lenght);
console.log($scope.formData);
$http({
method: 'POST',
url: 'http://closure-compiler.appspot.com/compile',
///data : $.param($scope.formData), // pass in data as strings
params: {
'output_info': 'compiled_code',
'output_format': 'text',
'compilation_level': 'WHITESPACE_ONLY',
'js_code': js_code
},
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
// set the headers so angular passing info as form data (not request payload)
})
.success(function(data) {
console.log(data);
if (!data.success) {
// if not successful, bind errors to error variables
console.log(data);
} else {
// if successful, bind success message to message
$scope.message = data.message;
}
});
};
问题出在请求头上,我收到了这个错误:
POST http://closure-compiler.appspot.com/compile?compilation_level=WHITESPACE_ON…%0D%09%09%09%7D;%0D+%7D();%0D&output_format=text&output_info=compiled_code 411 (Length Required)
几乎是一个错误代码411()所需长度。我想知道是不是有人想出了解决这个问题的办法。我一直在谷歌上搜索,但没有找到解决方案。谢谢
您必须提供Content-Length标头。它可能有点像;
'Content-Length': $.param($scope.formData).length,