GraphQL未向WP API发出请求

问题描述

谢谢!

我正在从WP Rest API中提取数据,并在本地计算机上启动地址为http:// localhost:8000的wordpress站点并到达http:// localhost:3000 / api上的graphqli游乐场时/ graphql并输入查询,可以得到预期的结果,并且可以在响应中愉快地使用数据,但是一旦将WP REST API地址更改为http://example.com/cms,我就会得到一个错误。唯一更改的是URL,因此我猜测它与CORS有关。

检查浏览器窗口中没有CORS错误,因此我可以排除CORS问题。奇怪的是,当我通过邮递员进行api调用时,我得到了我期望的响应,当我在浏览器中输入端点时,我得到了我期望的结果,当我使用端点来解析查询请求时,我得到了一个错误,所以我开始看标题,因为那是我唯一能看到的邮递员请求和正常浏览器请求之间的变化。对于本地wp安装@ localhost:8000,查看日志,我可以看到邮递员,浏览器和axios(在查询解析器中使用)发出的请求是在网络上运行的wp安装的另一面,日志显示请求从邮递员,从浏览器到api端点,而不是从graphql解析器。我该如何解决不使用解析程序的问题?

这是我的查询解析器

const resolvers = {
    Query: {
        pages: (_parent,_args,_context) => {
            return axios.get(`${wpURL}/wp-json/wp/v2/pages`)
            .then(res => res.data)
                    .catch(error => {
                        console.log("Response Status:",error.response.status);
                        console.log("Response Headers:",error.response.headers);
                        console.log("Response Data:",error.response.data);
                    });
        }
    }
}

graphqlserver:

import {ApolloServer} from 'apollo-server-micro'
import Cors from 'micro-cors'
import {schema} from './schema'

const cors = Cors()
const server = new ApolloServer({schema})
const handler = server.createHandler({path: '/api/graphql'})

export const config = {
    api: {
        bodyParser: false,}
}

export default cors(handler)

终端:

> next dev

ready - started server on http://localhost:3000
event - compiled successfully
event - build page: /api/graphql
wait  - compiling...
event - build page: /api/graphql
event - compiled successfully

页面

enter image description here

我在做什么错了?

解决方法

我发现它看起来好像端点graphql正在从中获取数据不是通过SSL来保护的,它甚至都不会要求数据