GraphQL实战:写给全栈工程师们
上QQ阅读APP看书,第一时间看更新

1.6.3 GraphQL错误以及异常信息明确

当把多个查询拼装在一起的时候,可能有的查询成功,有的查询失败,那么出错信息就需要更为清晰明确。对于前面那个同时查询用户9527和产品0023的例子中,如果用户查询成功,但是产品却不存在,需要向客户端明确指出哪条查询出错了,而不能笼统地返回400或500等错误码。下面看看GraphQL的返回是什么样。代码如下:

GraphQL会返回一个大的数据对象,其包含data和errors两大块。data就是承载查询的返回值,而errors则承载出错信息。如果所有查询都成功了,那么errors就不会出现在返回的数据对象中。