2017-12-20 2 views
0

내 목표는 최종 사용자가 CSV 파일을 다운로드 할 수 있도록 CSV 파일에 대한 링크를 표시하는 것입니다.node-red-dashboard : 파일 출력 노드로 만든 csv 파일을 어떻게 다운로드합니까?

그래서 CSV 파일을 생성하고 파일 출력 노드를 사용하여 저장했지만 최종 사용자가 링크/버튼을 클릭하여 다운로드 할 수있는 방법을 찾을 수 없습니다. 나는 다음과 같은 흐름을 시도하지만, http://localhost:1880/ui/~/TEST.CSV 가리키는 : [{"id":"3aff08aa.8731d8","type":"inject","z":"a24aefdf.d606e","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":120,"y":100,"wires":[["1541e37c.3072dd"]]},{"id":"1541e37c.3072dd","type":"function","z":"a24aefdf.d606e","name":"","func":"msg.payload = {};\nmsg.payload = {\"col1\": 1, \"col2\": 2};\nreturn msg;","outputs":1,"noerr":0,"x":270,"y":100,"wires":[["2d045a05.efbef6"]]},{"id":"12ba838c.dcd18c","type":"file","z":"a24aefdf.d606e","name":"TEST.CSV","filename":"~/TEST.CSV","appendNewline":true,"createDir":true,"overwriteFile":"true","x":570,"y":100,"wires":[]},{"id":"2d045a05.efbef6","type":"csv","z":"a24aefdf.d606e","name":"","sep":",","hdrin":true,"hdrout":true,"multi":"one","ret":"\\n","temp":"col1, col2","x":410,"y":100,"wires":[["12ba838c.dcd18c"]]},{"id":"5a9db6ab.f35b28","type":"http in","z":"a24aefdf.d606e","name":"downloads","url":"/downloads","method":"get","upload":false,"swaggerDoc":"","x":120,"y":160,"wires":[["7291d925.cfc9b8","ccef1ce3.900b8"]]},{"id":"7291d925.cfc9b8","type":"debug","z":"a24aefdf.d606e","name":"","active":true,"console":"false","complete":"false","x":140,"y":240,"wires":[]},{"id":"1916b0d1.3c55ff","type":"http response","z":"a24aefdf.d606e","name":"response","statusCode":"200","headers":{"content-type":"text/plain"},"x":560,"y":160,"wires":[]},{"id":"ccef1ce3.900b8","type":"ui_template","z":"a24aefdf.d606e","group":"a1588fc.a8dc47","name":"","order":0,"width":0,"height":0,"format":"<div ng-bind-html=\"msg.payload\"></div>\n<a href=\"~/TEST.CSV\">Download TEST.CSV</a>","storeOutMessages":true,"fwdInMessages":true,"templateScope":"local","x":420,"y":160,"wires":[["1916b0d1.3c55ff"]]},{"id":"a1588fc.a8dc47","type":"ui_group","z":"","name":"Data Export","tab":"ea941605.788c18","disp":true,"width":"12"},{"id":"ea941605.788c18","type":"ui_tab","z":"","name":"Dashboard","icon":"dashboard","order":1}]

내가이 절대 경로 함께 할 수있는 뭔가 기대하지만, 노드 빨간색 웹 서버의 루트 파일에 어디 모른다 시스템 ...

도움이 감사드립니다.

건배, 사이먼

기본적으로 읽고 당신의 settings.js 파일의 섹션이

답변

1

: 아직 수행하지 않은 경우

// When httpAdminRoot is used to move the UI to a different root path, the 
// following property can be used to identify a directory of static content 
// that should be served at http://localhost:1880/. 
//httpStatic: '/home/nol/node-red-dashboard/', 

에서, httpStatic 행의 주석이와 노드 - 레드 서버가 쓸 수있는 절대 위치로 디렉토리 경로를 설정하십시오. 그런 다음 node-red를 다시 시작하고 흐름을 수정하여 CSV 파일을이 디렉토리로 출력하십시오. 이 위치에서 작성한 모든 파일/폴더는 node-red express 서버에서 제공 할 수 있습니다.

노드 붉은 서버가 시작

, 그것은 정적 파일을 제공에 사용되는 절대 경로를 출력합니다 - 예를 들어, 내 프로젝트에 보여줍니다 :

13 Jan 12:06:45 - [info] Settings file : C:\NODE\node_red_ui\settings.js 

13 Jan 12:06:45 - [info] HTTP Static : C:\NODE\node_red_ui\public

13 Jan 12:06:45 - [info] User directory : C:\NODE\node_red_ui 
13 Jan 12:06:45 - [info] Flows file  : C:\NODE\node_red_ui\flows_ENTLAPTOP18.json 
13 Jan 12:06:45 - [info] Dashboard using development folder 
13 Jan 12:06:45 - [info] Server now running at http://localhost:1880/admin/ 
13 Jan 12:06:45 - [info] Starting flows 

C:\NODE\node_red_ui\public\downloads\test.csv,

파일을 만들면 url => 다운로드 할 수 있습니다. http://localhost:1880/downloads/test.csv

+0

정말 고마워요. – simonl

관련 문제