使用 Shelf 构建的新闻获取API服务器,配置为启用 Docker 运行。
请确保有一个包含必需参数的 .env 文件
gnewsapi=<yourkey>
文档可以在 /docs 端点(以及所有其他非API端点)找到
设置项目
您可能需要像这样生成代码文件
dart run build_runner build
运行示例
使用 Dart SDK 运行
您可以使用 Dart SDK 像这样运行示例
$ dart run bin/server.dart
Server listening on port 8080
然后在第二个终端执行
$ curl http://0.0.0.0:8080/v1/search?query=AMD
{"metadata":{"source":"..."},"count":...,"articles":[...]}
使用 Docker 运行
如果您安装了 Docker Desktop,您可以使用 docker 命令进行构建和运行
$ docker build . -t myserver
$ docker run -it -p 8080:8080 myserver
Server listening on port 8080
然后在第二个终端执行
$ curl http://0.0.0.0:8080
Hello, World!
$ curl http://0.0.0.0:8080/echo/I love News
I%20love%20News
您应该会在第一个终端看到打印的日志
2021-05-06T15:47:04.620417 0:00:00.000158 GET [200] /
2021-05-06T15:47:08.392928 0:00:00.001216 GET [200] /echo/I%20love%20News