『入る学科間違えた高専生』の日記

プログラミングのコードを書いたりする予定です。あとは日記等。あといつまで高専生やねん

モールス信号APIを公開してしまった!

はじめに

qiita.com

先日こんな感じの記事を書いてから何故か @lovee さんと
モールス信号関係の開発をしようとかなって「じゃあ!僕はAPIを作ります!」って言う感じに作ったやつです。
また、いつ非公開にするかもしれないのでご了承ください。

github.com

ちなみに @lovee さんの作ったものです。

では行きましょう!!

公開URL

https://morse.nnsnodnb.moe/api/alphabet

リポジトリ

github.com

環境

  • AWS
  • Python3.5.2
  • Application Server
    • Nginx 1.11.7

サンプルリクエス

$ curl -X POST -H 'Content-Type application/json' https://morse.nnsnodnb.moe/api/alphabet -d '{"sentence": "hogehoge foo bar hello json"}'

みたいな感じです。

GETリクエス

GETリクエストをすると

{
    "error": "Not allowed method"
}

というよう返ってきます。ぶっちゃけGETでも良かったんですが、長ったらしい文章が来ることも考えてPOSTにしています。

POSTリクエス

{
    "sentence": "hello Django",
    "result": [
        {
            "word": "h",
            "morse": [
                "0",
                "0",
                "0",
                "0"
            ]
        },
        {
            "word": "e",
            "morse": [
                "0"
            ]
        },
        {
            "word": "l",
            "morse": [
                "0",
                "1",
                "0",
                "0"
            ]
        },
        {
            "word": "l",
            "morse": [
                "0",
                "1",
                "0",
                "0"
            ]
        },
        {
            "word": "o",
            "morse": [
                "1",
                "1",
                "1"
            ]
        },
        {
            "word": " ",
            "morse": []
        },
        {
            "word": "d",
            "morse": [
                "1",
                "0",
                "0"
            ]
        },
        {
            "word": "j",
            "morse": [
                "0",
                "1",
                "1",
                "1"
            ]
        },
        {
            "word": "a",
            "morse": [
                "0",
                "1"
            ]
        },
        {
            "word": "n",
            "morse": [
                "1",
                "0"
            ]
        },
        {
            "word": "g",
            "morse": [
                "1",
                "1",
                "0"
            ]
        },
        {
            "word": "o",
            "morse": [
                "1",
                "1",
                "1"
            ]
        }
    ]
}

成功するとこんな感じ!

また、失敗すると???

POSTリクエスJSON{"key": "value"}

{
    "data": {
        "key": "value"
    },
    "error": "Please format",
    "format": {
        "sentence": "Hello"
    }
}

というような感じになります。

他の PUT , DELETE などは使っていません。不要なので

レスポンスの説明

0 になっているレスポンスについては短いやつです。
1 になっているレスポンスについては長いやつです。

SOS だったら 000 111 000 というようなレスポンスですね。

最後に

何かあればPR等お願いします!また、まだアルファベットにのみ対応しているので数字や日本語には対応していません!! 暇がある人はCSVデータを作ってくださればインサートしてなるべく早く公開できるように対応します!!!