アプリケーション

JWTとは

アプリケーション

概要JWTについて調べたことをまとめておく。OAuthやOpen ID Connectなど実際の利用事例については触れない。 JWTとはJWT(JSON Web Token)は、JSONデータ構造を用いたURLセーフなClaim(JWTを用いたJSONオブジェクトはClaim Setと呼ばれる)を表現するフォーマット。JWTでは、デジタル署名またはメッセージ認証コード(MAC)を用いたJWS(JS...

JWT

gRPCとはーGolangでgRPCに入門するー

アプリケーション

概要GolangでgRPCに入門する。 gRPCとはgRPCとは、Googleが開発したRPC※実現のためのプロトコル。HTTP/2の利用を前提としている。 gRPCではGoogleが開発しているProtocol BuffersというIDL(インターフェース定義言語)でAPI仕様を定義するシリアライズフォーマットを使用する。 gRPCの通信方式にはHTTP/2の仕様に則った4つのパターンがある。 ...

Golang gRPC マイクロサービス HTTP/2 RPC

Golang×chromedp×slack botでslackの絵文字自動生成ボットをつくってみた

アプリケーション

概要Golang×chromedp×slack botでslackの絵文字自動生成ボットをつくってみた。 作ったものslackでbotにパラメータを付けたメンションを飛ばすと画像を生成してくれるだけのもの。内部的には、パラメータを元にcanvasで画像を生成、ヘッドレスブラウザでスクショを撮って画像を保存、slackに投稿、といった感じ。 github.com - emoji-generator-...

Golang Slack chrome chromedp emoji slack-bot

vscodeでgoのLanguage Serverを有効にしたらコード定義元ジャンプができなくなった

アプリケーション

概要vscodeでgoのLanguage Serverの設定を有効にしたらコード定義元へのジャンプができなくなってしまったので原因を調査した。 settings.json "go.useLanguageServer": true, 結論go.modがプロジェクトのルートに存在している必要がある。 cf. stackoverflow - How to properly use ...

Golang gocode gopls Language Server vscode

PHPでUMLを自動生成してくれるツールーphUML

アプリケーション

概要クラス設計の外観を把握したい時にUMLを自動生成してくれるツールが欲しかった。phpstormなら標準でいい感じにdiagramを生成してくれる機能があるらしいが、vscodeに入信してしまったのでいい感じのツールを探すしかない。 phUMLぐぐると色々ツールはあるのだが、簡単に使えそうなやつを探してみた。 github.com - MontealegreLuisphumlドキュメント 本家?...

PHP

GolangでgoblinというURLルーターを自作した

アプリケーション

概要GolangでURLルーターを自作したので実装するまでの過程をメモしておく。 準備URLルーターを実装する際に行った下準備をまとめる。 データ構造とアルゴリズムURLをどのようにマッチングさせるか、というロジックについて検討する。 多くのライブラリでは、データ構造として木構造がよく扱われているので、どんな種類の木構造を採用するかを考えてみた。 文字列探索に特化した木の中で、時間的・メモリ的計算...

Golang URLルーティング

URLルーティング自作入門 エピソード2

アプリケーション

概要この記事はURLルーティング自作入門 エピソード1の続きで、Makuake Development Team Advent Calendar 2019の15日目となります。 URLルーティングを自作する前回の続きです。 ルーターを自作するにあたり、ルーターがどういった処理を行うのかデータ構造の観点から考えてみます。 ルーターがどんなInputを受け取って、どんなOutputを返すのか、動的な...

HTTP URLルーティング

URLルーティング自作入門 エピソード1

アプリケーション

概要この記事はMakuake Development Team Advent Calendar 2019の14日目の記事です。 趣味で駆け出し※URLルーティング自作マンをやっているので、URLルーティング自作界隈※に入門したい人に向けた記事となれば幸いです。 ※駆け出しというキーワードが今年はWeb界隈で流行り?ましたね。私は去年末からURLルーティング自作を始めたので駆け出しだと思います。※そ...

HTTP URLルーティング

GolangのHTTPサーバーのコードリーディング

アプリケーション

概要この記事はQiita - Go6 Advent Calendar 2019の20日目の記事です。 GolangでHTTPサーバーを立てるコードの詳細を追ってコードリーディングします。 参考実装コードリーディングしていく実装はこちら。 package main import ( "net/http" ) func main() { mux := http.NewServeMu...

Golang net/http

FuelPHP1.8.0→1.8.2、PHP5.6→PHP7.3へのバージョンアップした

アプリケーション

概要FuelPHP1.8.0→1.8.2、PHP5.6→PHP7.3へのバージョンアップ対応をした。業務でアプリケーションのバージョンアップ対応を行ったので、取り組みをまとめておく。 スコープ FuelPHP1.8.0 → FuelPHP1.8.2 PHP5.6 → PHP7.3 対象リポジトリ ユーザー側アプリケーション 管理側アプリケーション パッケージリポジトリ ※ミドルウェアのバージ...

PHP FuelPHP