WEB

    [Node.js] module로 내보내기 / 입력 정보에 대한 보안 / 출력 정보에 대한 보안

    [Node.js] module로 내보내기 / 입력 정보에 대한 보안 / 출력 정보에 대한 보안 module로 내보내는 법 //module file module.exports = 객체; //using module var module = require(경로); 입력 정보에 대한 보안 var path = require('path'); var filteredId = path.parse(queryData.id).base; fs.readFile(`data/${filteredID}`, 'utf8', function(){}... path라는 모듈을 이용해서 path.parse.base를 하면 ../password.js와 같이 경로를 탐색하는 입력값이 들어와도 password.js라는 값만 filteredId에 보내게 ..

    [Node.js] post 방식으로 가져오기 / redirection / File rename / File delete 구현

    [Node.js] post 방식으로 가져오기/ redirection / File rename / File delete 구현 POST 방식으로 가져오는 법 var qs = require('querystring'); //request는 요청들어온 것, response는 요청을 받아서 응답을 한 것 var app = http.createServer(function(request,response){ var body = ''; request.on('data', function(data){ //request로 들어온 정보를 조각조각 잘라서 data라는 인자를 통해서 수신 body += data; //너무 큰 데이터가 들어오면 연결 끊음 if(body.length > 1e6){ request.connection.de..

    [Node.js] console input / 404 not found 출력 / file list 가져오기

    [Node.js] console input / 404 not found 출력 / file list 가져오기 console input 받는 법 var argv = process.argv; console.log(argv[2]); argv[0]과 argv[1]에는 node의 경로, file의 경로가 들어가있다. 따라서 argv[2]부터 입력해준 input 값이 들어가는 것이다. 404 not found 출력하는 방법 var url = require('url'); var app = http.createServer(function(request,response){ var pathname = url.parse(request.url, true).pathname; if(pathname === '/') { ... } e..

    [Node.js] url parse / File read

    [Node.js] url parse / File read url parse하는 법 var url = require('url'); var app = http.createServer(function(request,response){ var _url = request.url; var queryData = url.parse(_url, true).query; var id = queryData.id; console.log(id); }); url 모듈을 require로 가져온다. _url에 들어있는 ?id=1과 같은 정보를 parse해서 queryData에 담는다. queryData의 정보를 가져온다. File read 하는 법 var fs = require('fs'); fs.readFile('sample.txt',..

    [Javascript] var, let, const 차이

    [Javascript] var, let, const 차이 값 변경 var a = 10; a = 11; let b = 10; b = 11; const c = 10; c = 11; //error const 는 상수이기 때문에 한번 지정한 값을 바꾸려고 하면 에러가 난다. 호이스팅 console.log(a); var a = 10; console.log(b); let b = 10; //undefined error console.log(c); const c = 10; //undefined error var 는 호이스팅이 되지만 let 과 const 는 호이스팅이 되지 않는다. 이때 호이스팅이랑 함수 안에 있는 선언들을 모두 끌어올려서 해당 함수 유효 범위의 최상단에 선언하는 것을 말한다. 자바스크립트 함수는 실행..

    [PHP] 데이터 정제

    사용한 주요 함수 iconv_substr : iconv는 인코딩 문제 때문에 추가, substr함수는 문자열 일부 추출하는 함수 preg_replace : 문자열 일부를 교체하는 함수 is_numeric : 해당 문자열이 숫자인지 확인하는 함수 explode : delimeter를 기준으로 나눠서 array에 저장하는 함수 isset : 해당변수가 정의되었는지 확인하는 함수 strpos : 찾고자 하는 문자열이 해당 문자열에 포함되어 있는지 확인하는 함수, 리턴값 조심.

    [Django/Blog] DB에서 데이터를 가져와 템플릿에 적용

    View & Model & Template view는 모델과 템플릿을 연결하는 역할. 일반적으로 뷰가 템플릿에서 모델을 선택하도록 만들어야함. blog/views.py from django.shortcuts import render from django.utils import timezone from .models import Post # Create your views here. def post_list(request): posts = Post.objects.filter(published_date__lte=timezone.now()).order_by('published_date') return render(request, 'blog/post_list.html', {'posts': posts}) - fr..

    [Django/Blog] Django ORM & QuerySets

    Django ORM ORM(Object-Relational Mapping)이란 객체(Object)와 관계형 DB(Relational Database)의 데이터를 매핑(mapping)해주는 것을 의미한다. 객체 간의 관계를 바탕으로 SQL을 자동으로 생성해서 SQL 쿼리문 없이도 DB의 데이터들을 다룰 수 있다. ORM을 사용하면 불필요하게 많이 적지 않아도 되니 빠르게 개발이 가능하고, 생산성이 좋아진다. Django ORM은 model class를 통해서 객체를 만들고 이 객체를 통해서 DB에 접근한다. 쿼리셋 (QuerySet) 전달받은 모델의 객체 목록. 쿼리셋은 DB로부터 데이터를 읽고, 필터를 걸거나 정렬을 할 수 있음. #django interactive console (myvenv) ~/dj..