MongoDB


mongodb/mongo-go-driver를 사용하는 MongoDB 스토리지 드라이버입니다.

참고: Go 1.19 이상 버전이 필요합니다.

Table of Contents

  • Signatures

  • Installation

  • Examples

  • Config

  • Default Config

Signatures

func New(config ...Config) Storage
func (s *Storage) Get(key string) ([]byte, error)  
func (s *Storage) Set(key string, val []byte, exp time.Duration) error
func (s *Storage) Delete(key string) error
func (s *Storage) Reset() error
func (s *Storage) Close() error
func (s Storage) Conn() mongo.Database

Installation

MongoDB는 모듈을 지원하는 최근 2개 Go 버전에서 테스트되었습니다. 아직 모듈을 초기화하지 않았다면 먼저 초기화해야 합니다:

go mod init github.com/<user>/<repo>

그런 다음 mongodb 구현을 설치합니다:

go get github.com/gofiber/storage/mongodb/v2

Examples

스토리지 패키지를 임포트합니다.

import "github.com/gofiber/storage/mongodb/v2"

다음과 같은 방법으로 스토리지를 생성할 수 있습니다:

// 기본 설정으로 초기화
store := mongodb.New()

// 사용자 지정 설정으로 초기화  
store := mongodb.New(mongodb.Config{
  Host:       "127.0.0.1",
  Port:       27017,
  Database:   "fiber",
  Collection: "fiber_storage",
  Reset:      false,
})

// 연결 문자열을 사용한 사용자 지정 설정으로 초기화
store := mongodb.New(mongodb.Config{
  ConnectionURI: "mongodb://user:[email protected]:27017",
  Database:      "fiber",
  Collection:    "fiber_storage", 
  Reset:         false,
})

Config

type Config struct {
  // DB에 사용할 연결 문자열. 사용하면 다른 모든 인증 값을 재정의합니다.
  //  
  // 선택 사항. 기본값은 "" 
  ConnectionURI string

  // DB가 호스팅되는 호스트 이름
  //
  // 선택 사항. 기본값은 "127.0.0.1"
  Host string

  // DB가 수신 대기하는 포트
  // 
  // 선택 사항. 기본값은 27017
  Port int
  
  // 서버 사용자 이름
  //
  // 선택 사항. 기본값은 "" 
  Username string

  // 서버 비밀번호
  //
  // 선택 사항. 기본값은 ""
  Password string
  
  // 데이터베이스 이름
  //
  // 선택 사항. 기본값은 "fiber"
  Database string

  // 컬렉션 이름 
  //
  // 선택 사항. 기본값은 "fiber_storage"
  Collection string

  // Reset은 기존 테이블의 모든 키를 삭제합니다.
  // 
  // 선택 사항. 기본값은 false
  Reset bool
}

Default Config

var ConfigDefault = Config{
  ConnectionURI: "",
  Host:          "127.0.0.1", 
  Port:          27017,
  Database:      "fiber",
  Collection:    "fiber_storage",
  Reset:         false,
}

Last updated