GraphQL Apollo 错误请求

GraphQL Apollo Bad request

我正在尝试在 React 应用程序中使用 GraphQL 和 Apollo 从 themovieDB 查询数据。 我正在发送非常相似的请求,但其中只有一个似乎有效。我试过将查询分成单独的组件,但它没有帮助,所以它不太可能与我发送多个查询的事实有关。 "ONE_MOVIE_BY_ID_QUERY" 触发错误 "Error: Network error: Response not successful: Received status code 400"。以下是我调用查询的方式:

const {
        loading : loadingLatest,
        error   : errorLatest,
        data    : latestData,
        refetch : refetchLatest
    } = useQuery(LATEST_MOVIE_QUERY, {
        variables : { movieId: 'latest' }
    });

    const { loading, error, data, refetch } = useQuery(ONE_MOVIE_BY_ID_QUERY, {
        variables : { movieId: movieState },
        skip      : !latestData
    });

查询本身:

export const ONE_MOVIE_BY_ID_QUERY = gql`
    query OneMovieByIdQuery($movieId: String!) {
        oneMovieById(movieId: $movieId) {
            id
            adult
            title
            poster_path
            original_language
            original_title
            overview
            release_date
            runtime
            budget
            belongs_to_collection
            imdb_id
            revenue
            tagline
            genres
            production_countries
        }
    }
`;

export const LATEST_MOVIE_QUERY = gql`
    query OneMovieByIdQuery($movieId: String!) {
        oneMovieById(movieId: $movieId) {
            id
        }
    }
`;

最后是 GraphQL 模式

oneMovieById            : {
            type    : MovieType,
            args    : {
                movieId : { type: GraphQLString }
            },
            resolve(parent, args) {
                return axios
                    .get(`https://api.themoviedb.org/3/movie/${args.movieId}?api_key=${myAPIKey}`)
                    .then((res) => res.data);
            }
        }

我应该指出,当我在 GraphiQL 中尝试查询时,查询似乎按预期工作,并在变量作为 "latest" 和字符串中的数字之间切换。

感谢 Daniel Rearden 的回答,我犯的错误是我忘记在查询中包含子字段,这似乎触发了错误。再次感谢您的帮助!