MSW 不拦截 GraphQL 请求

问题描述

我已经尝试了互联网上描述的所有可能的解决方案,但似乎没有任何帮助。

我创建了一个模拟服务器并试图拦截一个 GraphQL 调用

./setup/setup-server.ts

const handlers = [
graphql.query<Getoperation,GetoperationVariables>(
    'Getoperation'
    (req,res,ctx) => {
      // nothing showing in console
      console.log(req.variables);
      return res(
        ctx.data({
          operation: [] // mocked operation
        })
      );
    }
  ),]

./graphql/use-get-operation.ts

export const GET_OPERATION_BY_ID_DEFAULT = gql`
  query Getoperation($idOrContractNumber: String!) {
    operation(input: { idOrContractNumber: $idOrContractNumber }) {
      id
      modality
      totaltaxes
      exchangeRate
    }
  }
`;

呼叫未被拦截

我已经试过了:

  • 配置文件中导入jest-fetch-mock
  • 在 setupFiles.js 中启动服务器(如文档中所示);
  • 在测试中直接启动文件中的服务器;
  • 在操作名称中使用正则表达式而不是字符串;

似乎没有任何效果

我尝试创建查询和更改,但没有成功。

使用的 MSW 版本:0.33.0

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)