wandersonwhcr / rest-romans
将罗马数字转换为阿拉伯数字以及反之的最无用的网络服务
dev-main
2021-04-03 14:47 UTC
Requires
- php: >=7.4
- psr/http-message: 1.0.*
- slim/psr7: 1.3.*
- slim/slim: 4.7.*
- wandersonwhcr/romans: ^1.0
Requires (Dev)
- php-parallel-lint/php-parallel-lint: 1.2.*
- phpmd/phpmd: 2.9.*
- phpunit/phpunit: 9.5.*
- sebastian/phpcpd: 6.0.*
- slevomat/coding-standard: 6.4.*
- squizlabs/php_codesniffer: 3.5.*
This package is auto-updated.
Last update: 2024-08-29 05:55:17 UTC
README
将罗马数字转换为阿拉伯数字以及反之的最无用的网络服务
描述
本项目提供了一个RESTful服务,用于将罗马数字转换为阿拉伯数字,反之亦然。简单明了。此外,它使用PHP和Romans库编写。
安装
您可以从源代码构建此服务,但已准备好可用的Docker镜像。该镜像基于PHP-FPM,您必须使用HTTP服务作为辅助,例如NGINX。
cat > default.conf.template <<'EOF' server { listen 80; root /var/www/html/public; index index.php; try_files $uri $uri/ /index.php; location ~* \.php$ { fastcgi_pass romans:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; } } EOF docker network create romans docker run \ --detach \ --name romans \ --network romans \ --publish 9000 \ wandersonwhcr/romans docker run \ --detach \ --name romans-http \ --network romans \ --publish 80:80 \ --volume "`pwd`/default.conf.template:/etc/nginx/templates/default.conf.template" \ nginx
Docker Compose
此外,您还可以使用docker-compose
来执行此服务。请记住,从上一节创建default.conf.template
文件。
version: "3" services: romans: image: "wandersonwhcr/romans" networks: - romans ports: - "9000" romans-http: image: "nginx" networks: - romans ports: - "80:80" volumes: - "./default.conf.template:/etc/nginx/templates/default.conf.template" networks: romans:
使用
作为一个RESTful服务,它提供了两个端点用于转换。以下示例使用curl
发送请求将1999
从阿拉伯数字转换为罗马数字。
curl http://localhost/v1/arabics/1999 \
--include \
--request GET \
--header 'Accept: application/json'
HTTP/1.1 200 OK
Content-Type: application/json
{"arabic":"1999","roman":"MCMXCIX"}
还有另一个端点用于将罗马数字转换为阿拉伯数字,如下面的示例所示。
curl http://localhost/v1/romans/MCMXCIX \
--include \
--request GET \
--header 'Accept: application/json'
HTTP/1.1 200 OK
Content-Type: application/json
{"arabic":"1999","roman":"MCMXCIX"}
开发
您可以使用Docker Compose从本项目构建镜像并运行容器以开发和测试此软件包。
docker-compose build
docker-compose run php-fpm composer install
docker-compose run php-fpm composer test
许可证
本项目是开源的,可在LICENSE中描述的MIT许可证下使用。