내 server.js 파일에서 xml을 반환한다고 가정하는 HTTP GET 요청을합니다. 콘솔에 GET 요청의 응답을 기록 할 때 아래 사진에서 볼 수 있듯이 물음표와 검은 색 다이아몬드가 많이 포함 된 횡설수설입니다. node.js에서 xml 파일을 사용하려면 어떻게해야합니까?
내 GET에서 사용하는 것과 동일한 URL을 사용하면 요청을하고 브라우저에서 열면 gzip 파일이 자동으로 다운로드됩니다.이 파일은 압축 해제 된 후 데이터가 포함 된 읽을 수있는 XML 파일 (내 텍스트 편집기 내부)을 포함합니다.
내 server.js 파일의 올바른 형식으로 xml을 가져 오는 방법은 무엇입니까? 나는 그것을 텍스트 편집기 (분명히)가 아니라 내 프로그램에서 사용할 필요가있다.
axios.get('http://www2.jobs2careers.com/feed.php?id=1237-2595&c=1&pass=HeahE0W1ecAkkF0l')
.then(function(response) {
targz().extract(response.data, '/data', function(err){
if (err) {
console.log('Something is wrong ', err.stack);
}
console.log('Job done!');
});
});
내 말은 콘솔에서 오류가 발생 : 아래 그림과 같이 내가 targz 라이브러리를 사용하여 GZIP 파일을 추출하려고했습니다
axios.get('http://www2.jobs2careers.com/feed.php?id=1237-2595&c=1&pass=HeahE0W1ecAkkF0l')
.then(function(response) {
console.log(response.data);
});
: 여기
내 GET 요청입니다 : "경로는 null 바이트가없는 문자열이어야합니다". targz에서 추출 방법을 사용해야합니까, 아니면 그냥 잘못 사용하고 있습니까? response.data를 압축 해제하거나 압축을 풀려고합니다.
대답은 귀하의 질문에 : 응답은 XML 파일이 아닙니다, 그것은 GZIP 파일입니다. 추출 할 수있는 노드 모듈이 필요합니다. 여기에 하나 : https://www.npmjs.com/package/tar.gz –
또한 zlib https://nodejs.org/api/zlib.html#zlib_class_zlib_gzip –
가능한 복제본 : http://stackoverflow.com/question/12148948/how-do-i-ungzip-decompress-a-nodejs-requests-module-gzip-response-body – jgozal