我将DS.ActiveModelAdapter
扩展为使用自定义host
,因为我的API位于子域中,例如在本地工作时使用http://api.lvh.me:3000
。
在我的测试中,我尝试使用Pretender模拟对API请求的响应,但Pretender并未处理请求,我怀疑是由于此自定义主机设置。
我尝试了许多不同的变体来完成这项工作,包括将主机设置为不同的值,根本不设置主机,使用--proxy
命令运行测试,等等。
答案 0 :(得分:3)
如果将适配器的主机定义为配置变量,它可能会起作用:
export default DS.ActiveModelAdapter.extend({
host: config.apiHost
});
您将主机定义为非托管环境(http://api.lvh.me:3000)中的“真正”主机,并在测试中省略config.apiHost。如果这样做,您可以使用Pretender来截取请求,因为它们现在是同一主机(或者换句话说,相对)请求。