ibonly / naija-emoji

该软件包最新版本(dev-master)没有提供许可信息。

dev-master 2015-12-03 12:16 UTC

This package is not auto-updated.

Last update: 2024-09-18 18:33:40 UTC


README

Build Status License Quality Score Scrutinizer Code Quality Code Climate Test Coverage

Emojinaija 是一个 RESTful API 服务,提供emoji管理的访问权限。只需链接到 emojinaija

安装

需要 PHP 5.5+ 和 Composer

通过 Composer

$ composer require ibonly/naija-emoji
$ composer install

使用方法

API 端点

        EndPoint                        Public Access
    POST /auth/Login                        TRUE
    GET /auth/Logout                        FALSE
    POST /emojis                            FALSE
    GET /emojis/                            TRUE
    GET /emojis/{id}                        TRUE
    POST /emojis/{id}                       FALSE
    PATCH /emojis/{id}                      FALSE
    PUT /emojis/{id}                        FALSE
    DELETE /emojis/{id}                      FALSE

API 功能

        EndPoint                            Functionality
    POST /auth/login                   Logs a user in
    GET /auth/logout                   Logs a user out
    GET /emojis                        List all the created emojis.
    GET /emojis/{id}                   Gets a single emoji
    POST /emojis                       Create a new emoji
    PUT /emojis/{id}                   Updates an emoji
    PATCH /emojis/{id}                 Partially updates an emoji
    DELETE /emojis/{id}                Deletes a single emoji

公开可访问的方法

####单个emoji检索

请求

    GET https://emojinaija.herokuapp.com/emoji/1
    HEADER: {"Content-Type": "application/json"}

响应消息:如果存在具有ID为1的emoji

    HEADER: {"status": 200}
    BODY:
    [
        {
          "id": 1,
          "name": "lips",
          "char": ""
          "keyword": [
            "lips",
            "parts",
            "body",
            "kiss"
          ],
          "category": "human",
          "date_created": "2015-11-19 22:37:08",
          "date_modified": "2015-10-19 22:37:08",
          "created_by": "foo"
        }
    ]

响应消息:如果ID为1的emoji未找到

    HEADER: {"status": 404}
    BODY:
    {
      "message": "Not Found"
    }
  • 检索所有emoji

请求

    HEADER: GET https://emojinaija.herokuapp.com/emojis
    HEADER: {"Content-Type": "application/json"}

响应消息:获取所有emoji

    HEADER: {"status": 200}
    BODY: If there are saved resources
    [
        {
            "id": 3,
            "name": "Olopa",
            "char": "👮",
            "keywords": [
              "man",
              "police",
              "human"
            ],
            "category": "Peoples",
            "date_created": "2015-11-25 09:30:19",
            "date_modified": "2015-11-25 09:35:00",
            "created_by": "foo"
          },
          {
            "id": 4,
            "name": "nose",
            "char": "👃",
            "keywords": [
              "human parts",
              "nose",
              "body"
            ],
            "category": "human",
            "date_created": "2015-11-26 09:09:46",
            "date_modified": "2015-11-26 09:09:46",
            "created_by": "foo"
          },
          {
            "id": 5,
            "name": "Prof",
            "char": "👴",
            "keywords": [
              "Human",
              "People"
            ],
            "category": "Human",
            "date_created": "2015-11-26 15:32:19",
            "date_modified": "2015-11-26 15:32:19",
            "created_by": "foo"
        }
    ]

响应消息:如果没有找到emoji

    HEADER: {"status": 404}
    BODY:
    {
      "message": "Not Found"
    }
  • 为了访问私有方法,需要进行注册。注册用户登录时,将为注册用户生成一个令牌。生成的令牌将用于访问私有API。

  • 注册

请求

    POST https://emojinaija.herokuapp.com/register
    HEADER: {"Content-Type": "application/json"}
    BODY:
    {
      "username": your_preferred_username,
      "password": your_preferred_password
    }

响应消息

    HEADER: {"status": 200}
    BODY:
    {
      "username": "ogeni",
      "message": "Registration Successful. Please Login to generate your token"
    }
  • 登录认证

请求

    POST https://emojinaija.herokuapp.com/auth/login
    HEADER: {"Content-Type": "application/json"}
    BODY:
    {
      "username": your_username,
      "password": your_password
    }

响应消息

    HEADER: {"status": 200}
    BODY:
    {
      "username": "user",
      "Authorization": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9eyJpc3"
    }
  • 注销

请求

    GET https://emojinaija.herokuapp.com/auth/logout
    HEADER:
    {
      "Content-Type": "application/json",
      "Authorization": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9eyJpc3"
    }

响应消息

    HEADER: {"status": 200}
    BODY:
    {
      "message": "Logged out Successfully"
    }
  • 创建新的emoji

请求

    POST https://emojinaija.herokuapp.com/emojis
    HEADER:
    {
      "Content-Type": "application/json",
      "Authorization": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9eyJpc3"
    }

    BODY:
    {
      "name": "Horse",
      "char" : "🐎"
      "keyword": "Animal, Horse, Farm, Esin",
      "category": "Animal"
    }

响应消息

    HEADER: {"status": 200}
    BODY:
    {
      "id": 9,
      "name": "Horse",
      "char" : "🐎"
      "keyword": [
        "Animal",
        "Horse",
        "Farm",
        "Esin"
      ],
      "category": "Animal",
      "date_created": "2015-11-26 15:32:19",
      "date_modified": "2015-11-26 15:32:19",
      "created_by": "foo"
    }
  • 更新emoji

请求

    PUT https://emojinaija.herokuapp.com/emojis/9
    PATCH https://emojinaija.herokuapp.com/emojis/9
    HEADER:
    {
      "Content-Type": "application/json",
      "Authorization": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9eyJpc3"
    }
    BODY:
    {
          "keyword": "Animal, Horse, Farm, Esin, Zoo",
    }

响应消息

    HEADER: {"status": 200}
    BODY:
    {
      "Message" => "Emoji Updated Successfully"
    }
  • 删除emoji

请求

    DELETE https://emojinaija.herokuapp.com/emojis/9
    HEADER:
    {
      "Content-Type": "application/json",
      "Authorization": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9eyJpc3"
    }

响应消息

    HEADER: {"status": 200}
    BODY:
    {
      "Message" => "Emoji Deleted"
    }

测试

$ vendor/bin/phpunit test

贡献

要贡献并扩展此软件包的范围,请查阅CONTRIBUTING文件以获取详细的贡献指南。

鸣谢

Emojinaija 由 Ibraheem ADENIYI 创建和维护。