Be well coding/In Immersive
6/20 / server , express , node.js
be well
2019. 6. 20. 20:20
Toy 12번 문제.
string 이 주어지면 string 의 요소로 만들 수 있는 모든 요소를 담은 배열을 리턴.
ㄴ 구현실패. 컨디션 조절 실패로 오전 내내 졸았다.. 물론 맨정신이었어도 잘 못 풀 수준의 문제였음.. 재도전 예정..
++해결
var powerSet = function(str) {
let result = [];
let check = {};
for (let i = 0; i < str.length; i++) {
if (check[str[i]] === undefined) {
check[str[i]] = "check";
}
}
str = Object.keys(check).join("");
console.log(str)
function re(input, I) {
result.push(input);
for (let i = I; i < str.length; i++) {
re(input + str[i], i + 1);
}
}
re("", 0);
console.log(result);
return result;
};
const express = require('express');
const app = express();
const PORT = process.env.NODE_ENV === 'production' ? 3001 : 3002
app.listen(3002, ()=> (`server listen on ${PORT}`))
const bodyParser = require('body-parser')
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())
const cors = require('cors');
app.use(cors());
const fs = require('fs');
const fileName = __dirname + '/chat-log.json';
app.options('/classes/messages',(request,response)=>{
// console.log('11111 옵션 가즈아!!!!!!!!!!!!!!!')
response.status(200).send()
})
app.get('/classes/messages', (request,response)=>{
let chatLog = fs.readFileSync(fileName, 'utf8');
//console.log('33333 겟 가즈아!!!!!!!!!!!!!!!')
response.status(200).send(chatLog)
})
app.post('/classes/messages', (request,response)=>{
//console.log('22222 포스트 가즈아!!!!!!!!!!!!!!!')
let chatLog = fs.readFileSync(fileName, 'utf8');
let parsedChatLog = JSON.parse(chatLog);
parsedChatLog.results.push(request.body);
fs.writeFileSync(fileName,JSON.stringify(parsedChatLog),'utf8')
response.status(201).send()
})
익스프레스를 사용해보았다. node js 로 작성하던 불편한 코드들이 축약되는 기분? 오늘 사용해본 건 body parser , cors 정도. 서버를
바로 생성해주고 긴 코드들이 확실히 보기 편해졌다. 이해하기보다는 공식문서와 ex 로 뿌려진 것들을 참조하면서 적어갔다.
백엔드도 재밌긴하나 이해력이 많이 부족하다. fs 도 read write 까진 사용해보았는데 실시간 통신인 소켓을 사용해보고 싶었으나
실패했다.
갈수록 실력은 쥐꼬리만큼 씩 느는데 다들 너무 빠른 것 같다. 뒤쳐져도 별 수 없다 가즈아~