我刚刚开始使用 Falcon,我正在尝试做一些我认为应该非常简单和基本的事情。我只是希望我的一项服务向另一项服务发送请求。
让我用一个小代码示例让它变得更加简单。这是两个微服务。服务#1 存储一个数字,服务#2 增加一个存储的数字。
class NumberResource:
def on_post(self, req, resp):
self.value = req.media.get('value')
resp.media = {'value': self.value}
def on_get(self, req, resp):
resp.media = {'value': self.value}
class NextNumberResource:
def on_get(self, req, resp):
sibling = {}
# TODO sibling = get("/number")
resp.media = {'value': sibling.value+1}
api = falcon.API()
api.add_route('/number', NumberResource())
api.add_route('/next', NextNumberResource())
现在我可以存储数字 17:
curl http://localhost:8000/number -d '{"value":17}'
我可以检索存储的值:
curl http://localhost:8000/number
{"value": 17}
我想填写 TODO 行,以便检索计算值:
curl http://localhost:8000/next
{"value": 18}
最好的方法是什么?