为什么在我们尝试获取数据而不更新/提交新数据时,GraphQL为什么仍查询POST请求?

时间:2019-12-03 17:16:24

标签: graphql postman

我正在使用Postman从服务器中获取数据,当我使用REST调用时,这是一个GET请求,但是当我使用GraphQL API调用时,它必须是一个POST请求。为什么会这样?

1 个答案:

答案 0 :(得分:2)

GraphQL规范本身与传输无关,但是社区采用的惯例是利用POST请求。正如评论中指出的那样,某些库支持GET请求。但是,这样做时,由于GET请求不能包含主体,因此必须将查询 作为URL查询参数发送。对于较大的查询,这可能会带来问题,因为您可以在某些服务器上轻松达到414 URI Too Long状态。

最佳做法是始终使用内容类型为function email_of_user() { var email = prompt("What is your email?"); var at = email.indexOf("@"); if (at !== -1) { return email }; } 的POST请求。