Go (17) 썸네일형 리스트형 RSA 공개키와 JWE 를 통한 Message Encryption ( 코나 API ) 코나 Message Encryption 에 따르면 코나에서 사용하는 API Reqeust , Response 를 필요에 따라 암/복호화 하여 통신한다고 한다. 1. 서버 인증서 : KONA PLATE에 요청을 보낼 때 클라이언트는 서버 공개 키를 사용하여Message Payload를 암호화하고 KONA PLATE는 서버 개인 키를 사용하여 Payload를 복호화 합니다. 2. 클라이언트 인증서 : KONA PLATE에서 응답을 받을 때 KONA PLATE는 클라이언트의 공개 키를 사용하여 Payload를 암호화 하고 클라이언트는 서버의 개인 키를 사용하여 복호화 합니다. 클라이언트 인증서를 다운받아보면 아래와 같은 공개키와 개인키를 받게 된다. -----BEGIN PUBLIC KEY----- MIIzMg.. golang gin swagger API annotation FormData Path Query JSON golang http request query 추가 여러 방법 package main import ( "fmt" "io" "log" "net/http" "net/url" ) func main() { // GET client := &http.Client{} // 1. query 를 host 뒤에 직접 입력 host := "https://api.coinpaprika.com/v1/tickers" query1 := "limit=5" endPoint := fmt.Sprintf("%s?%s", host, query1) req, err := http.NewRequest(http.MethodGet, endPoint, nil) if err != nil { panic(err) } resp1, err := client.Do(req) if err != nil { panic(err) } .. 네이버 클라우드 플랫폼 카카오톡 알림톡 (golang) https://www.ncloud.com/ NAVER CLOUD PLATFORM cloud computing services for corporations, IaaS, PaaS, SaaS, with Global region and Security Technology Certification www.ncloud.com 회원가입 or 로그인 -> 마이페이지 결재 카드 연동 후 마이페이지 -> 인증키 관리 신규 API 인증키 생성 아래의 Simple & Easy Notification Service 에 프로젝트 등록후 ServiceID 발급 https://console.ncloud.com/sens/home 프로젝트 생성하기 클릭 Biz Message 체크후 원하는 프로젝트명과 설명 기입 Biz Message .. golang 프로토타입패턴(Prototype Pattern with golang) 목적 프로토타입 패턴은 이미 존재하는 객체를 해당 클래스에 의존하지 않고 복사하는 패턴이다. 실세계 유추 실제 세계에서 프로토타입(시제품)이란 용어는 제품의 대량생산을 시작하기 전에 다양한 테스트를 수행하는데 사용된다 하지만 프로토타입은 실제 제품에 참여하지 않는 수동적인 역할을 한다 공업적 프로토타입이 실제로 스스로 복사하는것이 아니기 때문에, 패턴에 더 근접한 유추는 생물학의 세포 유사 분열 과정으로 볼수있다 분열 이후에 개별 세포 쌍이 형성된다. 원본 세포는 프로토타입처럼 행동하고 복사본을 만드는데 능동적인 역할을 가져간다. 문제 가지고 있는 객체의 복사본을 가지고 싶다면, 같은 클래스의 새로운 객체를 만들고 가지고 있는 객체의 값들과 모든 영역들을 복사해야 한다. 하지만 어떤 객체들은 외부로부터 .. golang 빌더패턴(Builder Pattern) 빌더패턴은 복잡한 객체의 생성을 동일한 절차에서 서로 다른 결과를 만들어 낼수 있는 패턴이다. 자 예를들어 우리가 스타크래프트를 한다고 할때 우리는 종족을 저그,프로토스,테란 중 하나를 선택하는데 이 객체의 생성을 동일한 절차 즉 버튼하나만으로 그걸 구분해낸다. 그리고 그 종족을 고르면 우리는 전혀 다른 종족으로 플레이를 할수 있는것이다. 빌더패턴에서 중요한 Director 클래스가 있는데 이게 게임을 플레이하는 나(Player = Director) 라고 생각하면된다. 내(Director) 가 빌더패턴을 이용해서 종족이라는 빌더(Zerg,Protoss,Terran)를 정의한후 플레이(메서드구현)을 하면 그게 빌드패턴이 되는거다. 이번에도 스타크래프트를 예로 빌더패턴을 구현해보겠다. 위와 같이 빌더 인터페.. golang 상속 (상속아님) Go 언어에서는 상속이라는 개념이 없지만 그걸 유사하게 구현할수 있는 방법은 임베딩이 있다. 하지만 임베딩을 한다고 해서 그건 상속과는 다르다. 상속은 내 표현으로 얘기하자면 직접연결이지만 고 언어에서 임베딩은 직접연결이 아니다. 하지만 겉으로 보기엔 직접연결을 하고 있는것처럼 보인다. 위와 같이 상속된 객체는 인스턴스 하나를 생성하지만 고랭에서 임베딩을 한다고 하면 임베디드 된 객체 하나와 임베딩한 객체가 각각 생성된다. 그러니 상속과 임베딩은 엄연히 다른 의미이지만 위에서 얘기했듯이 Syntatic Sugar 로 인해 직접연결한 것처럼 보이고 그런식으로 사용된다. 한국 민속놀이중 하나인 스타크래프트로 예를 들어 보겠다. 저그의 유닛은 저글링과 히드라가 있다. (더 있는거 아는데 조용좀 해줄래?) 저글.. golang 추상팩토리 패턴(Abstract Factory with golang) 목적 추상 팩토리 패턴은 구상 클래스를 명시하지 않고도 서로 연관되거나 의존하는 객체들을 생성할 수 있도록 하는 패턴이다. 문제 여러 프로덕트군들간 공통적인 변수들을 가지고 있는 클래스들이 있다면 개별 객체들의 기존 코드들을 변경하지 않고 새로운 프로덕트를 관련된 프로덕트군에 추가하고자 한다. 해결책 프로덕트들의 개별 프로덕트에 대한 인터페이스를 명시한다. 그 이후 각 프로덕트들이 해당 인터페이스를 따르도록 한다. 모든 프로덕트에 대한 생성 메서드의 목록을 가지는 인터페이스를 선언한다. 구조 추상 프로덕트는 개별 프로덕트를 위한 인터페이스를 선언한다. 추상 팩토리 인터페이스는 각 추상 프로덕트를 생성하는 메서드의 집합을 선언한다. 구상 프로덕트는 변수들로 그룹화되는 추상 프로덕트를 다양하게 구현한다. 구.. 이전 1 2 3 다음