如何在GraphQL中的RESTAPI中获取具有空格、连字符的字段值
REST API端点- 交替版本、旁白和衍生领域都有空格和连字符 common_schema.js 若我将字段值写为派生版本或替代版本,那个么它会在终端中给出一个错误。分拆也不起作用。我知道这些是无效的,但我也试过了 manga_resolver.js 漫画 质疑- 在具有空格和连字符的字段中获取null 查询结果- 根据,GraphQL中的名称必须遵循以下格式:如何在GraphQL中的RESTAPI中获取具有空格、连字符的字段值,graphql,apollo,apollo-server,Graphql,Apollo,Apollo Server,REST API端点- 交替版本、旁白和衍生领域都有空格和连字符 common_schema.js 若我将字段值写为派生版本或替代版本,那个么它会在终端中给出一个错误。分拆也不起作用。我知道这些是无效的,但我也试过了 manga_resolver.js 漫画 质疑- 在具有空格和连字符的字段中获取null 查询结果- 根据,GraphQL中的名称必须遵循以下格式: /[_A-Za-z][_0-9A-Za-z]*/ 换句话说,不允许使用空格或破折号。如果数据源返回的属性名称格式不正确,则只需为相
/[_A-Za-z][_0-9A-Za-z]*/
换句话说,不允许使用空格或破折号。如果数据源返回的属性名称格式不正确,则只需为相关字段提供解析程序即可:
const resolvers = {
RelatedType: {
sideStory: (parent) => {
return parent['Side story']
},
...
}
}
另外,虽然您的类型名应该是PascalCase,但您的字段名应该是camelCase,以便与当前的命名约定保持一致。这就是我要找的,谢谢您的帮助!
const { RESTDataSource } = require('apollo-datasource-rest');
class MangaAPI extends RESTDataSource {
constructor() {
super();
this.baseURL = 'https://api.jikan.moe/v3/manga/';
}
async getMangaDetail(mal_id) {
const response = await this.get(`/${mal_id}`);
return response;
}
}
module.exports = MangaAPI;
query getMangaDetail{
manga(id: 13){
related{
Adaptation{
name
}
AlternativeVersion{
name
}
SpinOff{
name
}
}
}
}
{
"data": {
"manga": {
"related": {
"Adaptation": [
{
"name": "One Piece"
}
],
"AlternativeVersion": null,
"SpinOff": null
}
}
}
}
/[_A-Za-z][_0-9A-Za-z]*/
const resolvers = {
RelatedType: {
sideStory: (parent) => {
return parent['Side story']
},
...
}
}