반응형

프로그래밍 10

curl 프록시 옵션 완벽 가이드

curl은 HTTP/HTTPS 요청을 전송할 때 네트워크 경로를 설정하거나 중간 프록시 서버를 통해 요청을 보내는 기능을 제공합니다. 프록시는 네트워크 트래픽을 중계하거나 필터링하는 서버로, 특정 환경에서 필수적인 경우가 많습니다. 이번 글에서는 curl에서 프록시 옵션을 사용하는 방법과 실전 예제를 살펴보겠습니다.1. curl 프록시 옵션 개요curl에서 프록시를 사용하는 경우, 주요 옵션은 아래와 같습니다:--proxy 프록시 서버를 지정합니다. HTTP, HTTPS, SOCKS 등 다양한 프로토콜을 지원합니다.--proxy-user 프록시 서버에 인증이 필요한 경우 사용자 이름과 비밀번호를 설정합니다.--no-proxy 프록시를 사용하지 않을 도메인이나 호스트를 설정합니다.2. 주요 옵션과 사용법2..

프로그래밍 2024.12.18

curl 리다이렉트 따라가기 (301 Moved Permanently)

curl로 google.com에 접속하면 HTTP 301 Moved Permanently 응답을 받지만, 브라우저에서는 바로 200 OK 응답으로 페이지가 표시되는 이유는 리다이렉트 처리 방식의 차이 때문입니다.curl -i google.comHTTP/1.1 301 Moved PermanentlyLocation: http://www.google.com/1. HTTP 301 리다이렉트란?HTTP 상태 코드 301은 "Moved Permanently"를 의미합니다. 즉, 요청한 URL이 영구적으로 다른 URL로 이동되었음을 서버가 클라이언트에게 알려줍니다.Location 헤더에 이동할 URL(예: http://www.google.com/)이 포함되어 있습니다.2. 브라우저와 curl의 리다이렉트 처리 방식 ..

프로그래밍 2024.12.18

정규표현식(Regex) 기본문법과 예제 - 이메일, 전화번호

프로그래밍을 하다 보면 특정 패턴의 문자열을 찾아내거나 변환해야 할 때가 많습니다. 이메일 주소를 검증하거나, 로그에서 특정 데이터를 추출하거나, 텍스트를 검색해 수정하는 작업 등이 있겠습니다.이때 유용하게 쓰이는 도구가 바로 정규표현식(Regular Expressions)입니다.정규식 이라고 하기도 하고 영어로는 Regex라고 하던데, 레겍스라고 읽는거 같습니다.정규표현식이란?정규표현식(줄여서 RegEx)은 문자열에서 원하는 패턴을 찾거나 조작하기 위해 사용하는 형식언어 입니다. 특정한 스트링을 찾는게 아니라, 어떤 특정 형식의 스트링을 찾을 때 쓰입니다. 예를들어 숫자만 찾던지, 문자중에서도 특정 단어가 있는지 확인할때도 쓰이고요.다양한 프로그래밍 언어에서 지원하며, 대표적인 쓰임으로는 다음과 같습니..

프로그래밍 2024.12.09

Express request query, path, body 예제

1. Path Parameters (req.params)Path parameters는 URL 경로에서 특정 값을 동적으로 받는 경우 사용됩니다.라우트에서 :paramName으로 지정된 값은 req.params에 저장됩니다. const express = require('express'); const app = express(); app.get('/user/:id', (req, res) => { const userId = req.params.id; // Path parameter res.send(`User ID: ${userId}`); }); app.listen(3000, () => { console.log('Server running on port 3000'); }); 2. Query Parameters..

프로그래밍 2024.12.01

Mac Node.js 버전 관리 도구: n vs nvm 비교 및 사용법

# 터미널 Homebrew로 nvm 설치brew install nvm# 설치 확인nvm -vNode.js 개발 환경에서 여러 버전의 Node.js를 관리할 수 있는 도구들은 매우 유용합니다. 이를 통해 다양한 프로젝트에서 필요한 버전을 손쉽게 전환할 수 있기 때문입니다. 대표적인 Node.js 버전 관리 도구로는 n과 nvm이 있습니다. 두 도구 모두 유용하지만, 설치 방법과 사용법에 차이가 있습니다. 이 글에서는 n과 nvm을 비교하고, 각 도구의 설치 방법 및 기본 사용법을 설명하겠습니다.1. n : 간단한 Node.js 버전 관리 도구n은 Node.js 버전 관리 도구 중에서 가장 간단하고 직관적인 방식으로 여러 버전의 Node.js를 설치하고 전환할 수 있습니다. n은 npm을 통해 설치할 수 있..

프로그래밍 2024.11.27

Swift 시간복잡도 빅오(Big-O) 주요 예제

시간복잡도는 알고리즘이 특정 작업을 수행하는 데 필요한 연산 횟수를 입력 크기에 따라 표현한 것입니다. 입력 크기가 증가하면 알고리즘이 얼마나 더 느려지는지 평가하는 데 사용됩니다. 이를 통해 효율적인 알고리즘을 설계하거나 선택할 수 있습니다.  1. 시간복잡도 표기법: 빅오(Big-O) 표기법시간복잡도는 **입력 크기(n)**에 따라 알고리즘의 성능을 표현합니다.**빅오 표기법(Big-O Notation)**은 입력 크기가 커질수록 가장 중요한(가장 빠르게 증가하는) 항만 남기는 방식입니다.주요 빅오 표기법1. O(1) - 상수 시간입력 크기와 관계없이 항상 일정한 시간.예시: 배열에서 인덱스를 이용해 값을 바로 찾기. let value = array[3] // O(1) 2. O(log n) - 로그 ..

프로그래밍 2024.11.22

[JavaScript] Date 객체와 UTC/Locale 처리 방법

1. Date 객체의 기본 동작Date 객체는 기본적으로 컴퓨터의 로컬 시간대를 기준으로 동작합니다.예를 들어, 한국 표준시(KST, UTC+9) 환경에서 new Date()를 생성하면 현재 로컬 시간 기준의 날짜와 시간을 반환합니다. // 로컬 시간 기준 현재 시간 생성const now = new Date();console.log(now); // 예: Sat Nov 16 2024 20:30:00 GMT+0900 (KST) 2. UTC와 로컬 시간UTC (Coordinated Universal Time)UTC는 세계 표준 시간으로, 시간대를 고려하지 않은 시간입니다. JavaScript에서는 toISOString() 메서드를 통해 UTC 시간을 ISO 8601 형식으로 얻을 수 있습니다.console.l..

프로그래밍 2024.11.16

[Next.js] NEXT_PUBLIC_ env undefined 해결하기

우선 Next.js 에서 env 를 사용할때 브라우저에서 사용하려면 NEXT_PUBLIC_ 접두사가 필요하다.로컬 환경에서 .env 파일에 NEXT_PUBLIC_ env 를 설정하고 브라우저에서 사용할때는 문제가 없었다. docker, kubernates 환경에서는 계속 undefined로 나오는 문제가 있었다.다른 env 는 문제가 없었고 NEXT_PUBLIC_ 인 경우만 undefined 로 나왔다. 기존 설정에서는 deployment 에 env 로 설정했는데 여기서 문제가 있었다. Next.js 공홈 문서에 보면 아래와 같은 글이 있다. https://nextjs.org/docs/pages/building-your-application/configuring/environment-variables C..

프로그래밍 2024.06.19

cURL 로 POST 요청 JSON 데이터 전송하기

cURL 이란? cURL 은 다양한 프로토콜을 이용해 데이터를 전송을 위한 커맨드 라인 클라이언트 툴이다. 맥, linux 계열 PC 에는 이미 설치가 되어 있다. windows에서는 설치가 필요하다. 맥 기준 터미널 (windows에서는 cmd)에서 curl --version 명령어를 입력해 설치가 되어있는지 확인 가능하다. # 설치 버전을 확인 할 수 있다. $ curl --version curl 8.1.2 (x86_64-apple-darwin22.0) libcurl/8.1.2 (SecureTransport) LibreSSL/3.3.6 zlib/1.2.11 nghttp2/1.51.0 Release-Date: 2023-05-30 Protocols: dict file ftp ftps gopher goph..

프로그래밍 2023.09.25

UTC , GMT, Unix Time 이란? - javascript Date객체로 확인하기

UTC 와 GMT 차이 UTC(Coordinated Universal Time) : 세계 협정시, 국제적인 표준 시간의 기준GMT(Greenwich Mean Time) : 그리니치 평균시, UTC 와 교환 가능하지만 표준이 아니고 UTC 와 밀리초 차이 있다KST (Korea Standard Time) : 한국 표준시UTC, GMT 둘다 영국 그리니치 천문대를 지나는 본초자오선(경도 0°)을 기준 시간으로 하여 같은 타임존을 갖는다. 세계 협정시 일 경우 마지막에 Z 가 붙는다.  1981-02-22T09:00Z(Z 는 zulu time 에서 왔다는 경우도 있고 zero UTC Offset 이라는 이야기도 있음 ) 세계 협정시가 아닐 경우 해당 타임존의 offset 을 붙인다. 예시는 한국 offset ..

프로그래밍 2023.09.23
반응형