일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 객체
- for문
- 이터레이블
- 생성자쓰는이유
- 작성순서
- getter
- SQL
- 상속
- Join
- 삼항연산자
- executeUpdate
- Java
- .repeat
- 향상된for문
- 프로그래머스
- 겟터
- ifelse
- 자바
- int오류
- sql오류
- HAVING
- 오라클
- 카카오인턴십
- 연산자
- .substring
- SELECT 절
- 생성자
- 제어문
- 칼럼명에 별칭 지정
- setter
- Today
- Total
목록분류 전체보기 (291)
CoDream
정의Google OAuth 로그인 중 자주 발생하는 오류와 해결 방법을 정리했습니다.3줄 요약redirect_uri_mismatch 오류는 URI 불일치 문제"key must be a string when using hmac" 오류는 JWT_SECRET 문제API용 Socialite 사용 시 stateless() 메서드 필요예시 코드 및 해결법redirect_uri_mismatch 오류 해결Google Cloud Console에서 Redirect URI가 .env의 GOOGLE_REDIRECT_URI와 완전 일치하는지 확인HTTP/HTTPS, 경로, 슬래시 하나까지 꼼꼼히 체크JWT_SECRET 문제 해결JWT_SECRET=길고_복잡한_문자열_사용너무 짧거나 숫자만 있으면 안됨, 반드시 문자열Social..
정의JWT(Json Web Token)는 사용자 인증과 권한 검증에 쓰이는 암호화된 토큰입니다.3줄 요약JWT는 사용자 인증용 토큰Laravel에서 JWT_SECRET으로 토큰 서명 및 검증토큰 생성 시 만료시간 설정 필수예시 코드use Firebase\JWT\JWT;use Firebase\JWT\Key;use Carbon\Carbon;class JwtHelper{ public static function encode(array $payload) { $payload['iat'] = Carbon::now()->timestamp; $payload['exp'] = Carbon::now()->addMinutes((int) env('JWT_EXPIRE_MINUTES', 60))..
정의구글에서 콜백된 사용자 정보를 받아 DB에 저장하거나 기존 회원인지 확인하고, JWT 토큰을 발급하는 과정입니다.3줄 요약Socialite로 구글 사용자 정보 획득이메일 기준으로 DB에서 회원 조회 또는 신규 생성JWT 토큰 생성 후 클라이언트에 반환예시 코드public function handleGoogleCallback(Request $request){ try { $googleUser = Socialite::driver('google')->stateless()->user(); $member = Member::firstOrCreate( ['mem_id' => $googleUser->getEmail()], [ ..
정의Laravel Socialite는 소셜 로그인(Google, Facebook 등)을 쉽게 구현할 수 있는 라이브러리입니다.구글 OAuth 클라이언트 설정과 redirect URI 등록으로 외부 인증을 시작합니다.3줄 요약composer로 Socialite 설치Google Cloud Console에서 OAuth 클라이언트 설정 및 redirect URI 등록웹 라우터와 컨트롤러에 구글 로그인 시작 메서드 구현예시 코드와 설명composer require laravel/socialite.env 파일에 구글 클라이언트 설정 추가GOOGLE_CLIENT_ID=your-google-client-idGOOGLE_CLIENT_SECRET=your-google-client-secretGOOGLE_REDIRECT_U..
✅ 정의419 Page Expired 에러는 주로 CSRF 토큰 누락 또는 만료 때문에 발생합니다.Laravel에서는 보안상 POST, PUT, DELETE 요청에 대해 CSRF 토큰을 필수로 요구하기 때문입니다.✅ 3줄 요약419 Page Expired는 CSRF 토큰이 없거나 유효하지 않을 때 발생합니다.주로 웹에서 폼 제출 시, 토큰이 누락되면 발생하고, API 호출에는 제외 가능.API 전용 라우트(routes/api.php)는 CSRF 검증이 기본적으로 비활성화되어 있어야 정상 작동합니다.✅ 예시 코드와 설명🛠 웹 라우트에서 POST 요청을 보낼 때:HTML form 예시: @csrf 등록✅ @csrf 디렉티브가 을 자동 생성합니다.✅ API에서 Postman, axios ..
🎼 Composer란?Composer는 PHP에서 의존성 관리를 자동화해주는 도구입니다. 프로젝트에 필요한 라이브러리들을 선언하면, 해당 라이브러리와 그에 필요한 모든 의존성들을 자동으로 설치하고 관리해줍니다.🧩 주요 기능의존성 관리 자동화: 필요한 패키지를 선언하면, 관련된 모든 의존성 패키지를 자동으로 설치합니다.버전 관리: 각 패키지의 버전을 명시하여, 프로젝트에 맞는 안정적인 버전을 유지할 수 있습니다.프로젝트별 독립성 유지: 글로벌 설치가 아닌, 각 프로젝트 디렉토리 내에서 독립적으로 패키지를 관리합니다.자동 로딩 지원: 설치된 패키지들을 자동으로 로딩할 수 있는 기능을 제공합니다.📦 기본 사용법composer.json 파일 생성: 프로젝트의 루트 디렉토리에 composer.json 파일을..
Swagger란?1. 정의Swagger는 API를 문서화하고 테스트할 수 있게 도와주는 오픈소스 툴이에요.API가 어떤 경로(URL)로, 어떤 데이터(파라미터)를 받고, 어떤 형식으로 응답하는지 쉽게 확인하고 설명할 수 있습니다.2. 3줄 요약API 설계, 문서화, 테스트를 한 곳에서 할 수 있게 도와주는 도구Swagger UI를 통해 실제 API 요청을 웹에서 바로 실행해볼 수 있음OpenAPI 스펙(표준 문서 형식)을 기반으로 API 정의서를 작성3. 예시API 문서에 GET /users 경로가 있으면, Swagger UI에서 클릭해서 직접 요청 보내보고 결과(JSON) 확인 가능API 요청에 필요한 파라미터 입력란도 자동으로 생성됨4. 자세한 설명Swagger는 OpenAPI Specificatio..
✅ 라라벨(Laravel)과 CI(CodeIgniter)는 뭐가 비슷하고 다른가?1. 정의Laravel과 **CodeIgniter(CI)**는 둘 다 PHP 기반 웹 애플리케이션 프레임워크입니다.둘 다 개발자가 쉽고 빠르게 웹 앱을 만들도록 돕는 도구라는 점에서 비슷해요.2. 3줄 요약Laravel과 CI는 모두 PHP 프레임워크로, MVC 구조를 지원해요.Laravel은 기능이 풍부하고 최신 기술을 많이 포함한 반면, CI는 가볍고 단순해서 배우기 쉽고 빠른 개발에 적합해요.대규모 복잡한 프로젝트에는 Laravel, 간단하거나 빠른 개발에는 CI가 더 많이 쓰입니다.3. 주요 차이점구분LaravelCodeIgniter (CI)개발 스타일최신 PHP 기능, 객체지향, 강력한 기능 제공경량, 절차적, 간단..
✅ Laravel 정의Laravel은 PHP로 만든 가장 인기 있는 웹 애플리케이션 프레임워크 중 하나입니다.즉, PHP 개발자가 더 쉽고 빠르게, 유지보수가 편한 웹사이트나 API를 만들 수 있게 도와주는 도구 모음이에요.✅ 3줄 요약Laravel은 PHP 기반의 MVC(모델-뷰-컨트롤러) 구조를 지원하는 프레임워크입니다.라우팅, 데이터베이스 작업, 인증, 세션 관리 등 웹 개발에 필요한 기능을 쉽게 구현할 수 있어요.커뮤니티가 크고 문서가 잘 되어있어 배우기 쉽고, 실제 프로젝트에 많이 사용됩니다.✅ 간단한 예시 코드와 설명라우팅 (웹 요청 경로 설정) // routes/web.phpRoute::get('/hello', function () { return '안녕하세요, Laravel!';});..
✅ 자주 묻는 질문 TOP 10Access Token에 사용자 ID를 포함해도 괜찮은가요?Access Token에 사용자 ID를 포함하는 것은 일반적으로 허용되며, 백엔드 API에서 사용자를 식별하는 데 유용합니다. 그러나 민감한 정보는 포함하지 않는 것이 좋습니다.Auth0 CommunityJWT의 서명을 어떻게 검증하나요?JWT의 서명은 발급자의 공개 키를 사용하여 검증합니다. Auth0의 경우, 공개 키는 iss 클레임에 명시된 URL에서 JWKS 형식으로 제공됩니다.Access Token이 JWT 형식이 아닌 이유는 무엇인가요?audience 파라미터를 지정하지 않으면 Auth0는 JWT가 아닌 불투명한(opaque) 토큰을 발급합니다. JWT를 받으려면 audience를 명시해야 합니다.Auth..