BLOG

About us

  1. HOME
  2. ブログ
  3. リバ邸startup
  4. 海外で人気爆発中のNim言語でAPIサーバを作ってみた[Nim(Mofuw)+SQLite]

海外で人気爆発中のNim言語でAPIサーバを作ってみた[Nim(Mofuw)+SQLite]

こんにちは、リバ邸スタートアップ住人の大輔です!最近Nim言語を書いていて、楽しくなってきたのでMofuwというフレームワークを使ってAPIサーバを作ってみました。日本ではNim言語ユーザがかなり少ないのでNimがどんな言語か簡単に説明すると、Pythonライクな記法で記述できて動作が高速(GoやElixirより早い)で、主にIoTに向いていて、最近海外で注目されているコンパイル言語です。

APIの概要
概要:ユーザ認証機能のあるAPI。
フレームワーク:Mofuw
DB:SQLite
認証:JWT認証
実装パターン:ドメイン駆動設計のオニオンアーキテクチャ
テスト:PostManコレクションを用意したので、APIを試してみたかったらPostmanがおすすめです。
コード:https://github.com/OdaDaisuke/mofuw-apiserver

使い方(Mac OS X)

# nimインストール
$ brew install nim

# nimbleインストール
$ git clone https://github.com/nim-lang/nimble.git && cd nimble && nim c src/nimble && src/nimble install

# 各種nimbleのモジュールをインストール
$ nimble install mofuw
$ nimble install dotenv
$ nimble install jwt

# .envファイルをコピー
$ cp .env.default .env

# サーバを起動
$ nimble server

# 1.PostManでまず「Register」を起動してアカウント登録
# 2.次に「GetToken」でJWTトークンを取得
# 3.取得したトークンをBearerにセットして「1」で登録したアカウント情報をセットして
#   「signin」「Me」にアクセスすればユーザ情報が取得できる
# 4.「Refresh」のBearerに「2」で取得したトークンを設定してアクションを起動すると
#   新しいJWTトークンが取得できる。

エンドポイント

POST - /api/get_token (mail_address, password)
PUT - /api/refresh (Authorization: "Bearer: old_access_token")
POST - /api/register (name, mail_address, password)
POST - /api/signin (mail_address, password)
POST - /api/me (mail_address, password)
  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

関連記事