gpt4 book ai didi

javascript - Ember.js ajax POST 请求未通过 Mirage

转载 作者:行者123 更新时间:2023-12-02 22:50:42 25 4
gpt4 key购买 nike

我正在为我的 Ember 应用程序中的一个组件编写一些测试,其中该组件向我的服务器 API 执行 ajax POST 请求,该请求将返回文件位置的字符串。

我在 mirage/config.js 文件中添加了执行 ajax 请求时应使用的路由。

  this.post('/foobar', () => {
return "test";
});

当我运行测试时,我可以在网络选项卡和控制台中看到 ajax 请求正在尝试在我的本地主机上执行,但收到​​“连接被拒绝”错误。

POST http://localhost:8000/foobar net::ERR_CONNECTION_REFUSED

将调试器放入 mirage/config.js 文件中时,它并没有就此停止,而且似乎忽略了 mirage/config.js 中的路由完全。

URL 和命名空间都在配置文件中设置。

当我在本地主机上运行我的应用程序并点击此端点时,它会正确地通过 Mirage。但它在测试期间不使用海市蜃楼。

发出 ajax 请求的代码。

ajax.request(
uri.toString(),
{
headers: ajax.get('headers'),
method: 'POST',
data: data
});

这是通过单击按钮完成的,我在集成测试中“单击”了该按钮。

我可以做什么来进一步测试并找出请求没有通过 Mirage 的原因?

最佳答案

事实证明,问题出在我在集成测试中启动海市蜃楼的方式。

https://www.ember-cli-mirage.com/versions/v0.4.x/manually-starting-mirage/

按照这些步骤,我能够正确初始化 Mirage 并让我的测试正常运行。

关于javascript - Ember.js ajax POST 请求未通过 Mirage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58188624/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com