일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- docker
- jdk upgrade
- modelmapper
- 윈도우 개발서버
- EC2
- docker app
- Telegram API
- rbenv
- push 403
- thymeleaf
- 알림톡
- NoSQL Workbench
- 카카오 알림톡
- QureyDsl
- docker node
- 비즈뿌리오
- telegram
- Kotlin
- springboot
- querydsl
- NoArgsConstructor
- spring boot
- AWS
- jenkins window
- 고정 아이피
- DynamoDB
- jenkins bitbucket
- growpart
- layout-dialect
- 개발서버
- Today
- Total
목록백엔드 (18)
givepro
여기서 설명하는 내용은 인앱결제 개발 가이드를 먼저 확인 후 진행하는 것을 추천합니다. 인앱결제에 대한 프로세스를 모르고 개발을 진행하기에 어려운 부분이 있을 수 있기 때문입니다. 서버 개발환경은 아래와 같습니다. spring boot 2.1.3 gradle jdk 1.8 인앱결제 검증을 위한 서버의 프로세스는 아래와 같습니다. Client App에서 결제한 영수증 데이터를 서버로 전달 전달받은 영수증 데이터를 각 플랫폼에 검증 요청 검증 결과에 따라서 서버에서 주문정보를 업데이트 주문정보 업데이트 후 Client App으로 결과를 리턴 그렇다면 구글과 애플에서는 인앱결제 영수증 데이터를 어떻게 검증하는지 각각 보도록 합시다. Google 구글의 검증방식은 구글 클라우드 플랫폼에서 발급받은 엑세스 키를 ..
인앱결제란? In App Purcahse, 말 그대로 애플리케이션 내에서 결제를 하는 것을 의미합니다. 인앱결제를 왜 사용하는가? 앱 내의 모든 디지털 콘텐츠에 대해서는 인앱결제를 사용해야하는 것이 현재 구글과 애플의 정책 원래 구글은 아니었으나 2022.06부터 적용 인앱결제는 어디에 적용해야 하는걸까? 이용자가 게임·콘텐츠 등 디지털 상품 구매를 위해 앱에서 결제 할때 적용하도록 한다. 그럼 현재 뭐가 문제일까? 일단 수수료가 일반적으로 알고 있는 PG의 수수료와 다릅니다. 구글의 경우 최대 30% 수수료를 내야합니다. 인앱결제를 사용하지 않으면 앞으로 앱 심사 제출에서 통과 할 수가 없습니다. 또한 적용하지 않는다면 앱을 삭제한다는 구글의 권고 현재 국내에는 구글의 인앱결제 정책은 강제적이라고 하며..
우선 이번 작업에서 주요 핵심내용은 아래와 같다. 1. REST API를 활용하여 이메일 템플릿 리스트 및 샘플메일 발송 기능 구현 2. JAVA SDK를 활용하여 기존 시스템에 적용 3. CORS 셋팅 내가 진행중인 프로젝트는 ADMIN과 API서버가 각각 별도로 존재하고 있다. 기존의 ADMIN에서는 API를 별도로 통신하지 않고 자체에서 CRUD기능을 controller에서 처리했기 때문에 이번에 작업을 하면서 API와 통신하기 위해서는 CORS셋팅이 필요했다. 그래서 이 부분을 먼저 어떻게 설정하는지 살펴보고 그 후에 SDK 연동부분을 살펴보도록 한다. 1. Spring boot CORS 설정 (with Security) Spring Security 사용유무에 따라서 설정하는 방식은 다른 것으로 ..
기존 시스템에서 사용하던 외부 메일링 서비스 모듈을 사용하지 않고 AWS SES 서비스를 연동하기로 결정하여 AWS console에서 셋팅하는 방법부터 springboot에서 연동을 어떻게 했는지 작성해봤습니다. 1. AWS Console - SES 셋팅 console 이동 Configuration → Verified Identities 메뉴 이동 Identity type → Email address 사용하고자 하는 발신 메일 입력 Tag 생략 후 저장 생성한 Identity 선택 → 상세페이지 이동 Configuration set → Manage configuration sets Create set (name만 입력 후 나머지는 기본값 및 생략) 생성한 set (QpickerBeta) → Event d..
Interceptor란? Interceptor란 컨트롤러에 들어오는 요청 HttpRequest와 컨트롤러가 응답하는 HttpResponse를 가로채는 역할을 합니다.인터셉터는 관리자만 접근할 수 있는 관리자 페이지에 접근하기 전에 관리자 인증을 하는 용도로 활용될 수 있습니다. Filter와 Interceptor의 차이 호출 시점 Filter는 DispatcherServlet이 실행되기 전 , Interceptor는 DispatcherServlet이 실행된 후 설정 위치 Filter는 web.xml , Interceptor는 spring-servlet.xml 구현 방식 Filter는 web.xml에서 설정을 하면 구현이 가능하지만, Interceptor는 설정은 물론 메서드 구현이 필요합니다. Inter..
QueryDsl이란? Querydsl은 HQL(Hibernate Query Language) 쿼리를 타입에 안전하게 생성 및 관리할 수 있게 해주는 프레임워크다. 공식 레퍼런스를 인용한 정의인데, 잘 와닿지 않는다면 Querydsl은 자바 코드 기반으로 쿼리를 작성하게 해준다”라고 생각해도 좋을 것 같다. QueryDsl을 왜 사용하는가? JPA를 사용해서 페이지를 구현하다보면 기본 문법으로 구현하지 못하는 쿼리들이 있다. ex) 통계 쿼리 스프링부트에서는 Entity의 기본적인 CRUD가 가능하도록 JpaRepository 인터페이스를 제공한다 save() findAll() delete() ... 이를 해결하기 위해서는 몇가지의 방법들이 있다. Java8 Stream NativeQuery JPQL Qu..
개발환경 Spring boot gradle jdk 1.8 1. build.gradle compile add paypal sdk 를 compile 하도록 dependencies에 추가 한다. compile group: 'com.paypal.sdk', name: 'rest-api-sdk', version: '1.14.0' 2. Paypal 환경 변수 추가 Paypal Developer에서 App을 생성 후 해당 App의 상세 페이지에서 아래 항목을 확인 가능하다. Client ID Secret ID application.properties에 아래와 같이 추가 하도록 한다. # Paypal paypal.client.app={Client ID} paypal.client.secret={Secret ID} payp..
우선 페이팔에 비즈니스 계정이 있어야 한다. 페이팔은 테스트와 라이브가 아래와 같이 구분되어 있다. live sandbox Applications - PayPal Developer 로그인 후 위 페이팔 개발자 페이지를 접근 후 My Apps & Credentials 메뉴를 보면 아래의 내용을 확인 할 수 있다. 우선 테스트를 하기 위해 Sandbox에서 App을 생성해야 한다. 그 전에 우선 계정에 대한 부분부터 알고 진행하도록 하자. (SANDBOX → Accounts) 위 페이지를 보면 Default로 판매자, 사용자 계정이 있는 것을 확인 할 수 있다. 추가로 계정 생성을 하면 팝업과 같이 계정 타입과 국가를 선택하여 즉시 생성이 가능하므로 추가 할 수 있다. - 끝 - p.s 이후 생성된 앱 및 ..