从node.js中的url读取xml文件:编码问题
我想使用下一个代码从url读取xml文件:从node.js中的url读取xml文件:编码问题,node.js,xml,encoding,Node.js,Xml,Encoding,我想使用下一个代码从url读取xml文件: var request = require("request"); request.get( "http://regnskaber.virk.dk/27946272/ZG9rdW1lbnRsYWdlcjovLzAzLzMwLzllL2M3L2Y5LzUxYzQtNDZmNi04YzliLTdhODg1ODA0ZTdlNA.xml", function (error, response, b
var request = require("request");
request.get(
"http://regnskaber.virk.dk/27946272/ZG9rdW1lbnRsYWdlcjovLzAzLzMwLzllL2M3L2Y5LzUxYzQtNDZmNi04YzliLTdhODg1ODA0ZTdlNA.xml",
function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body);
// Continue with your processing here.
}
}
);
在输出中,我得到如下结果:
�������\D���<a>��4E��hQ�:!B��lu���u�ݶ�~^�Q�=<~��~ ���tq��#FUE+k���զj��_+��aNF�V�)M��E�O؍��V�c���c��r�n��U�����3����:�U���Fa�>�Qa\���+�����������W�;�^�FEi���F���Ū\W�9�
�������M����䯇��+�e����uvr\yR�P��mM�*��Ժ��6��^1>m�U����OV�a@ݣ8�� �3����f�>�Pp\��?���Nj�Nj����rqNZ�W[�;���O��Uw2\�O��.M�>e���4Ǵ����?F.��ώ�A;�P��oG��mS�|~ss��,(Y��JX�qJD����&W��,a��n���H��T��*Պ�an�u!&�T�R�VZ����Z����`�Y�a�
�������\D�����4E��总部�:!B��鲁���U�ݶ�~^�Q�=�质量保证\���+�����������W�;�^�菲���F���Ū\W�9�
�������M����䯇��+�E����uvr\yR�P��嗯�*��Ժ��6.��^1> m�U����奥夫�a@ݣ8�� �3.����F�>�聚丙烯\��?���Nj�Nj����rqNZ�W[�;���O��Uw2\�O��.M�>E���4Ǵ����?F��ώ�A.�P��奥格��太太�|~党卫军��,(Y)��JX�qJD����&W��,A.��N���H��T��*Պ�一�你&�T�R�VZ����Z����`�Y�A.�
编码似乎有问题,但我无法识别编码并修复它。在浏览器中,xml输出是正确的使用
curl
来命中端点也会得到乱码数据,而不是xml。查看标题,内容编码设置为gzip。因此这对我来说很有效:
var request = require("request");
request.get({
method: 'GET',
url: "http://regnskaber.virk.dk/27946272/ZG9rdW1lbnRsYWdlcjovLzAzLzMwLzllL2M3L2Y5LzUxYzQtNDZmNi04YzliLTdhODg1ODA0ZTdlNA.xml",
gzip: true},
function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body);
// Continue with your processing here.
}
}
);
您好,很有趣,
response.headers['content-encoding']
将显示编码。这可能会引起@IronMan的兴趣,非常感谢,请求使用{gzip:true}解决问题