웹페이지에서 url/uri를 통해서 전달된 쿼리스트링 정보를 자바스크립트에서 읽어오는 방법에 대하여 알아봅니다.# 쿼리스트링 정보 자바스크립트 읽어오는 방법웹페이지로 정보를 전달하고 이를 읽어오는 방법으로 쿼리스트링(query string)을 통해 전달할 수 있습니다. 이렇게 전달된 경우 아래와 같은 형태의 url 주소를 가지고 있겠죠.https://webisfree.com/?name=webisfree&no=123&order=5만약 자바스크립트를 사용하여 전달 된 파라미터 값을 읽으려면 어떻게 할까요? 방법을 생각해보면 아래와 같이 떠오를 수 있습니다.@ location.search 값에 split() 사용 또는 정규표현식 사용하기split()은 특정 문자를 기준으로 문자열을 자르기 때문에 & 기호를 기준으
Last Modified : 2022-03-23 14:29:03웹퍼블리싱 배우기. 이번에는 키워드를 찾아 검색할 수 있는 기능을 웹에 추가하기 위하여 검색창을 만드는 방법을 알아보겠습니다.# 검색창은 무엇이고 언제 사용되나요검색창은 방문자에게 원하는 웹사이트의 콘텐츠를 좀 더 찾기 쉽도록 도와주는 역할을 합니다. 예를 들어 css에 관련된 블로그 글을 찾는 경우 간단하게 검색창에 css를 타이핑하여 검색결과로 확인 및 이동하게됩니다. 아래에서는 검색창을 구현해보고 아래 사항도 고려하여 만들도록 하겠습니다.- 서버와 연동하기- 부트스트랩을 활용한 UI서버와 연동하는 경우 동기식, 비동기식 두가지가 존재합니다. 비동기식 ajax는 별도의 양식에 대한 고민이 크지 않으므로 동기식 방법으로 알아보겠습니다.그리고 부트스트랩을 사용하여 UI를 퍼블리싱하면 더 간단하고 쉽게 만들
Last Modified : 2019-08-05 22:15:34데이터의 검색 및 로그 분석, cache 등에 사용하는 elasticsearch를 알아봅니다. 먼저 아래는 조회, 생성, 삭제 등의 명령어를 우선 알아보고 검색 쿼리에 사용하는 몇 가지 예제들도 함께 알아보겠습니다.# elasticsearch를 사용한 조회, 수정, 삭제elasticsearch는 index(인덱스), type, id를 사용하여 필요한 Document를 생성합니다. 이때 REST 방식의 API로 명령할 수 있으며 아래 예제는 rest api를 curl을 사용하는 방법으로 알아보겠습니다.! 인덱스 조회 하기특정 인덱스가 존재하는지 여부를 수행합니다.- Method : GET- localhost:9200/indexNamecurl -XGET localhost:9200/indexName@ Pretty
Last Modified : 2018-12-21 10:14:43검색 로그 분석 등에 대표적인 elasticsearch(엘라스틱 서치)를 ubuntu에 사용하는 방법입니다. 아래는 설치하는 방법에 대하여 알아봅니다. 먼저 설치하기 이전에 필요한 사항들이 있습니다.- Java 설치하기(최소 8 이상)- 시스템 레벨의 root 권한일단 apt-get을 사용하여 최신 정보로 업데이트를 수행합니다.apt-get update! JAVA 설치하기현재는 자바의 최소 요구사항이 8 이상으로 8이상 설치하는 페이지 하단으로 이동하시기 바랍니다.@ java jre(Java Runtime Environment) installapt-get install default-jre설치를 확인합니다.java -version"java version 1.7.0_181"Open JDK Runtime Env
Last Modified : 2019-08-14 21:47:28자바스크립트에서 주소 입력창에 입력된 파라미터 값을 다른 값으로 변경하는 방법을 알아봅니다.# 주소창의 현재 파라미터를 다른 값으로 바꾸기쉽게 말해 현재 아래와 같은 페이지값의 파라미터를 다른 값으로 바꾸는 방법이라고 생각하시면 됩니다.// 변경 전https://webisfree.com?page=1// 변경 후https://webisfree.com?page=5위와 같이 페이지를 변경할 때 가장 많이 사용됩니다. 여기서 문제는 파라미터가 page값만 존재하는 경우는 거의 없을 것입니다. 아래처럼 여러개의 값들이 존재하겠죠...https://webisfree.com?page=1&category=js&tag=etc파리미터가 더 많은 경우 간단하게 구현하는 방법이 쉽게 떠오르지 않는데요 이때 사용 가능한 방법이 바
Last Modified : 2020-10-30 10:45:45안녕하세요 ~!!! 요새 거의 모든 사이트를 방문하면 RSS 피드 구독하기 버튼을 볼 수 있습니다. 어디서나 볼 수 있는 RSS 구독하기 버튼~ 혹시 잘 모르는 분을 위해 간단하게 알아볼까요?! RSS(Rich Site Summary)는 무엇인가?간략하게 설명하자면 RSS는 사이트에 방문하지 않고도 새로운 컨텐츠가 등록될 경우 이를 바로바로 등록한 구독자에게 알려주는 기능입니다. 일일히 사이트에 방문할 필요가 없으니 얼마나 편리할까요? RSS를 만든이는 아론 슈와츠로 천재적인 해커라고 알려져있습니다. 얼마전 뉴욕의 자신의 아파트에서 스스로 목을 매 26세의 어린 나이에 세상을 떠나 큰 화제가 되었는데요... 이에 대한 자세한 기사는 뉴욕타임즈(영문) 여기 링크를 클릭하시면 더 읽어보실수 있습니다.우측 하단이
Last Modified : 2019-08-14 21:47:15Lodash의 some()에 대하여 알아봅니다.some()은 Collection 데이터에서 일치하는 값이 존재하는지 그 여부를 알아낼 수 있는 방법으로 결과를 불리언 true, false로 반환합니다. 만약 일치하는 값이 존재하면 true를 반환하게 됩니다. 참고로 이처럼 컬렉션 값 중 일치하는 값을 확인하는 방법은 lodash에서 몇 가지 존재합니다. 그 중에서 every() 그리고 some()을 사용할 수 있습니다. 아래는 some()에 대하여 알아봅니다.# lodash some() 알아보기some()을 사용하는 방법은 아래와 같습니다._.some(Collection, 일치조건);Collection과 일치하는지를 확인한 후 일치하는 경우에는 true를 반환하고 아니라면 false를 반환하게 됩니다. 그럼
Last Modified : 2019-08-06 00:06:45파이썬(Python)에서 원하는 패키지를 찾기 위해서 search를 사용하는 방법에 대하여 알아봅니다.# Python 패키지에서 pip seacrh를 사용해 검색하기먼저 search를 사용하는 간략한 방법입니다.pip search <keyword> <option>위와 같이 원하는 키워드를 입력 후 실행하면 해당 키워드가 포함된 패키지 제목이나 요약(설명)에서 찾아 여러 개의 패키지를 모두 출력해줍니다. 출력된 결과를 보면 이름과 간략한 내용이 포함되어 있죠.원하는 키워드가 포함된 패키지를 찾을 때만약 대략적인 기능을 찾고자 할 때 search를 사용하면 간단하게 찾고 설치할 수 있을 것입니다. 예를들어 내가 nlp와 관련된 패키지를 찾고자 한다면? 아래와 같이 입력할 수 있죠.@ nlp 검색어 찾기$ pip
Last Modified : 2020-07-05 10:29:33문자열에서 특정 텍스트의 위치를 알고싶을때 search() 함수를 사용합니다. 해당 함수는 특정 문자열의 위치를 숫자로 반환하여 줍니다. 자세한 내용은 아래 예제를 참고하세요.# search() 예제소스 코드보기 example test = ’rankingis’;string = ’blog.rankingis.com’;output = string.search(test);// output의 결과는 4를 반환합니다. 그렇다면 engdic이 두 번 들어가 있다면 어떻게 될까 ? example string = ’rankingis&rankingis’;분명 engdic이 두 번 들어가 있지만 반환되는 값은 0만 나오게 됩니다. 중복확인은 되지 않는 것이죠.중복되는 부분까지 확인하려면 split() 메서드를 이용해 배열로 가
Last Modified : 2015-11-15 22:52:44자바스크립트를 사용하여 URL 주소로 입력된 쿼리스트링 값을 객체로 변환하는 방법에 대하여 알아보려고 합니다.# 자바스크립트 쿼리스트링 객체 변환하기쿼리스트링은 주소창에 입력된 파라미터 값으로 ?keyword=webisfree와 같이 사용된 문자열을 말합니다. 이 값을 사용하면 웹페이지에 특정한 값을 URL 주소로 쉽게 전달 받을 수 있습니다.@ 쿼리스트링의 장점?물론 파라미터 값을 전달하는 방법은 다른 방법도 있지만 이 방법만의 가장 큰 장점은 페이지를 이동해도 여전히 파라미터 값을 유지할 수 있다는 점입니다. 쉽게 말해 뒤로 가기 버튼을 눌러도 이 값은 url에 그대로 남아있죠.그렇다면 어떻게 하면 쿼리스트링을 객체로 변환할 수 있을까요? 우선 객체로 왜 변환할까요? 가장 큰 이유는 값을 가져오거나 변경
Last Modified : 2021-01-25 20:30:22엘라스틱서치(Elastic Search)에 대하여 알아보고자 합니다. 최근 수 많은 데이터의 검색을 어떻게하면 가장 효과적으로 수행할까의 고민이 있었고 엘라스틱의 성능 개선의 이야기를 들은 후 적용하기 이전에 그 기능 및 특징에 대하여 무엇인지 알아보았습니다. # 엘라스틱서치란? ElasticsearchElasticsearch 엘라스틱서치는 아파치의 루씬 라이브러리를 기반으로 만들어진 검색 엔진 어플리케이션으로 동일한 물리적 환경에서 검색을 수행할 경우 엄청나게 빠른 속도로 검색 결과를 도출할 수 있습니다. 즉 성능에 큰 장점을 지니며 다양한 기능을 제공합니다. 또한 엘라스틱서치는 오픈소스이면서 설치 방법과 사용도 간단합니다. 설치시 서버에 직접 설치하여 사용하기도 하고 AWS 등의 대형 클라우드 서비스
Last Modified : 2019-08-06 20:14:46Python 웹어플리케이션에서 MongoDB를 사용하여 검색어를 찾을때 검색어가 하나가 아닌 여러 개인 경우 이를 해결하는 방법입니다.! 검색어의 빈공백을 사용하여 함께 포함된 and 조건 찾기하나가 아닌 여러 개의 검색어를 사용하기 위한 방법으로 스페이스(공백)을 많이 사용합니다. 즉 제목에서 찾을 때 '웹 이즈'로 검색어를 입력한 경우에는 아래처럼 검색이 되야합니다.'웹 이즈' => '웹' and '이즈' 모두 들어있는 제목을 찾기이 경우 공백을 사용한 정규표현식을 방법이 많이 사용됩니다. 즉 빈 여백(space)인 경우 각각 다른 문자열로 보고 이를 각각 and 조건으로 포함하는 쿼리문을 만들면 되겠죠. 이때 키워드의 공백은 아래와같이 replace()를 사용하여 변경합니다.---------------
Last Modified : 2020-11-06 11:57:13MongoDB 연산자 중 $text에 대하여 알아봅니다.# $text 연산자는?MongoDB를 사용하여 텍스트를 검색하는 경우 $text 연산자를 많이 사용합니다.그래서 MongoDB의 제목이나 본문 등 텍스트가 많은 경우에 원하는 텍스트를 검색할 때 매우 쉽게 검색 쿼리를 작성할 수 있도록 도와줍니다.가장 기본적인 $text 연산자 사용의 문법입니다.{ $text: { $search: <string>, $language: <string>, $caseSensitive: <boolean>, $diacriticSensitive: <boolean> }}간단하게 설명하면 아래와 같습니다.$search // 검색에 사용할 키워드 조건$language // 검색에 사용될 언어 설정$caseSe
Last Modified : 2021-02-16 15:04:34키워드 검색어를 통해 결과를 보여주는 페이지를 만든다고 생각해봅시다. 예를들어 /search/ 라는 페이지가 있는 경우.. 이를 구현할때 해킹 및 보안을 위해 해야할 필수적인 것들은? 뭐가 있을까요?SQL injection등을 생각해볼 수 있겠죠.# SQL injection 회피하기먼저 SQL injection은 무엇일까요? SQL 인젝션은 가장 간단하고 잘 알려진 해킹 방법이라고 할 수 있죠. 이 방법은 매우 간단한데 웹페이지의 입력폼의 어느 곳이든 공격 대상이 될 수 있습니다. 일반적으로 아래와 같죠.ID 또는 PASS 입력폼키워드 입력폼간단한 예를들어보겠습니다. 아래의 경우 패스워드를 입력하는 곳에 패스워드가 아닌 다음의 텍스트를 입력했다고 가정합니다.패스워드를 입력하세요!PASSWORD: abc OR
Last Modified : 2017-05-05 22:11:05검색페이지 초성으로 검색하기 구현하는 방법
Last Modified : 2017-05-01 21:02:51