概要
- 旧漢字もしくは旧漢字がある漢字を受け取り、文字列を置換して返すAPI
例) 蛍柄の螢光灯
| No | 説明 | 返値 |
|---|---|---|
| 1 | 新漢字→旧漢字 | 螢柄の螢光灯 |
| 2 | 旧漢字→新漢字 | 蛍柄の蛍光灯 |
| 3 | 旧漢字が含まれるか | true |
| 4 | 旧漢字存在する新漢字が含まれるか | true |
| 5 | 存在した旧漢字数 | 1 |
きっかけ
業務上で旧漢字と新漢字を変換するプログラム開発があり、
API経由でコンバートしてくれる仕組みがあれば便利だと思い開発に至った。
※その時は一から実装しましたが、自分と同じ考えの人も少なからずいると思ったので…
またAPIを作成しても周知しなければ使用してもらえないと思い、初めてQiitaに投稿することにした。
環境
| 環境 | 名前 | バージョン |
|---|---|---|
| 実行環境 | Docker | 20.10.8 |
| エディタ | VSCode | 1.61.1 |
| 言語 | Node.js | 15.14.0 |
| フレームワーク | Express | 4.16.1 |
| バージョン管理 | Git,GitHub | 2.25.1 |
| ホスティング | Glitch |
API仕様
URI
GET http://api.lesson-pg.com/v1/kanji/
Request
| パラメータ | 型 | 例 | 備考 |
|---|---|---|---|
| article | String | /v1/kanji/?article=螢が飛んでいる | 旧漢字/新漢字を含む文章を渡す (※500 文字まで) |
Response Body
Response 200 (application/json)
{
"old": "螢が飛んでいる",
"new": "蛍が飛んでいる",
"includedOld": true,
"includedNew": false,
"count": 1
}
| プロパティ | 型 | 例 | 備考 |
|---|---|---|---|
| old | String | 螢が飛んでいる | 新漢字を旧漢字へ変換した値 |
| new | String | 蛍が飛んでいる | 旧漢字を新漢字へ変換した値 |
| includedOld | Bool | true | 旧漢字が含まれるか |
| includedNew | Bool | true | 旧漢字が含まれるか |
| count | Integer | 1 | 存在した旧漢字数 |
Response 400 (application/json)
{
"message": "The maximum number of characters (500 characters) has been exceeded"
}
Response 404 (application/json)
{
"message": "Not Found"
}
Response 405 (application/json)
{
"message": "Method Not Allowed"
}
実行テスト
API開発では今まで「Postman」を使用していたが、今回はVSCode拡張機能「Thunder Client」を使用 ※VSCodeで完結できるため採用
Thunder Clientをインストール/有効化
リクエスト作成
パラメータを入力後「Send」ボタンをクリック
実行
リンク
細かい仕様やソースコードはこちらにあります↓
https://github.com/uswebk/KanjiConvertAPI
今後
- 一般の人向けに、今回作成したAPIを流用して管理画面から使用できるようにしたい。
- アクセス数が分かるようログを取りたい。
アドバイスや改善点があればお申し付けください。



