Scenario
스프링으로 개발하다보면, URL 뒤에 /value=hi&id=nana0303
이런식으로 string을 쓰면 서버측에서 HandlerMethodArgumentResolver 등록해놨다면 바로바로 맵에서 Parameter 들을 꺼내 쓸 수 있엇다.
그래서 nodejs에서도 /down/value=hi&id=nana0303 이런식으로 보낸뒤 (나는 당연히 JSON 형식으로 갈꺼라 생각)
router.get('/download/:Params', function(req, res){
req.params.Params.storedname
}
서버에서 이렇게 꺼내쓰면 될 줄알았다. 하지만 params 은 긴 스트링으로 인식 되는 것이었다.
Solution
역시 NodeJs에서는 querystring 이라는 모듈로 제공 하고 있었다.
다음과 같이 쓰면 내가 원하는 결과를 얻을 수 있엇다.
- var querystring = require('querystring');
- //file down
- router.get('/download/:Params', function(req, res){
- var Params = querystring.parse(req.params.Params);
- console.log("path: %s",JSON.stringify(Params, null, " "));
- res.download('./'+downPath+Params.storedname, Params.originFileName);
- });
'To be Developer > MEAN Stack' 카테고리의 다른 글
[NodeJs] PassPort 로그인 기능 구현시 trouble shooting (0) | 2017.09.15 |
---|---|
[EJS]JSON from EJS to JSON object in JS (0) | 2017.09.08 |
[MEAN Stack] MEAN Stack 이란 무엇인가? (0) | 2017.09.06 |