如何使用testcafe解决file://和https:// XHRs的CORS问题

时间:2018-08-31 21:44:34

标签: cors testcafe

Testcafe开发人员:感谢您创建了一个很棒的,易于使用的产品!

我正在用testcafe在我的电子应用程序上进行完整的端到端测试,这将向XHR发送带有file://方案的大多数终结点URL以及其他一些我们控制的API。

我通过在打开file://的情况下启动http-server npm软件包来解决了带有--cors URL的CORS问题(testcafe代理使用222代码进行响应)。

我当前的问题是,当我的应用程序将XHR发送到API时,我似乎没有任何办法解决该问题。我希望模拟API请求。当不在testcafe实例中运行我的应用程序时,file://和API请求都没有问题。

是否有(直接)解决此问题的方法? (而且,对于file://请求也有类似的解决方案,而无需创建Web服务器吗?)我假设这个问题很普遍,我已经遍历了testcafe和testcafe的github问题。 -hammerhead以及“食谱”页面。我也曾尝试创建一个请求挂钩,但仍得到222响应代码。

这是我的自定义钩子:

class MyHook extends RequestHook {
  constructor(requestFilterRules) {
    super(requestFilterRules, {includeHeaders: true, includeBody: true});
  }
  onRequest(event) {
    event.requestOptions.headers['Origin'] = 'file://';
    console.log(event);
  }
}

我假设我要做的就是按照上述代码将Origin:标头更改为我的API接受的标头。 (我猜上面代码中的includeHeaders / includeBody属性或onResponse方法的存在/不存在在这里都没有效果,但是我不确定。)

谢谢!

0 个答案:

没有答案