【问题标题】:Call a public GraphQL API once a month每月调用一次公共 GraphQL API
【发布时间】:2022-01-20 19:17:49
【问题描述】:

我想每月调用一个公共 GraphQL API 并带有一些小的业务逻辑。

我阅读了有关 Posthook 的信息,但不清楚如何使用它来调用 GraphQL API。 Posthook 似乎只支持 REST。

有什么简单可靠的方法可以做到这一点?使用 AWS Lambda 有意义还是有更简单的方法?

【问题讨论】:

    标签: cron graphql scheduled-tasks


    【解决方案1】:

    GraphQL 服务通常是 interact with clients over HTTPPOST 请求。客户端在请求中发送 JSON,在响应中接收 JSON。

    一些用例受益于像 Apollo Client 这样的 GraphQL 客户端库,但普通的旧 cURL 可以正常工作:

    # request
    curl --location --request POST 'https://swapi-graphql.netlify.app/.netlify/functions/index' \
    --header 'Content-Type: application/json' \
    --data-raw '{"query":"query Query($filmId: ID) {\n  film(filmID: $filmId) {\n    title\n }\n}","variables":{"filmId":1}}'
    
    # response
    {"data":{"film":{"title":"A New Hope"}}}
    

    AWS Lambda(AWS 的无服务器功能服务)将是实现计划的 GraphQL api 调用和应用业务逻辑的好方法。 Lambda 服务与cron-scheduled triggeringresults notification 很好地集成在一起。这很容易to get started。您可以通过在 AWS 控制台中单击来设置服务。或者使用基础设施即代码库,如 AWS 的 SAM(即在 YAML 中定义您的基础设施)或 CDK(即在 JS/Python/等中定义您的基础设施)。或者以更多方式。

    其他云提供商也有类似的产品,请自行选择。

    【讨论】:

      猜你喜欢
      • 2017-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-28
      • 1970-01-01
      • 2019-04-21
      • 1970-01-01
      相关资源
      最近更新 更多