ember:在 ember-网络中使用 cookie
ember: using cookies with ember-network
Cookie 可以用于 ember- 网络请求吗?感谢 我知道它们可以与 ember-data API 请求一起使用,但我需要在初始化程序中执行网络请求并且它没有出现 ember-可以尽早访问数据存储。
背景:
我想将购物车数据保存到后端 these reasons
ember-cart 插件有一种聪明的方式来持久化购物车,方法是 json 验证和数据模型并在它发生变化时转储到本地商店:
window.localStorage.setItem('cart', JSON.stringify(this.payload()));
然后在 return 访问解析 json 并将其推送到实例初始化器中的存储中:
...
payload = JSON.parse(payload);
...
cart.pushPayload(payload);
我想做基本相同的事情,但不是从本地存储获取 JSON,而是通过网络从 API 获取。
商店在初始化程序中不可用,但 ember-网络可用。所以假设我认为我可以做到这一点。我 运行 遇到的问题是没有传递 cookie。
我通过使用 ember-data 解决了这个问题:
xhrFields: {
withCredentials: true
}
在应用程序适配器中,但我找不到任何关于 ember-network 是否有类似设置的信息。我看到在初始化程序中对我的 API 发出了请求,但是 api 没有 return 任何东西,因为不包括浏览器 cookie。
The fetch
API provides a credentials
option.。
这也记录在 ember-network
使用的 whatwg-fetch
库中。
所以基本上你可以做到
fetch("/foobar", { credentials:"include" }).then(...)
Cookie 可以用于 ember- 网络请求吗?感谢
背景:
我想将购物车数据保存到后端 these reasons
ember-cart 插件有一种聪明的方式来持久化购物车,方法是 json 验证和数据模型并在它发生变化时转储到本地商店:
window.localStorage.setItem('cart', JSON.stringify(this.payload()));
然后在 return 访问解析 json 并将其推送到实例初始化器中的存储中:
...
payload = JSON.parse(payload);
...
cart.pushPayload(payload);
我想做基本相同的事情,但不是从本地存储获取 JSON,而是通过网络从 API 获取。
商店在初始化程序中不可用,但 ember-网络可用。所以假设我认为我可以做到这一点。我 运行 遇到的问题是没有传递 cookie。
我通过使用 ember-data 解决了这个问题:
xhrFields: {
withCredentials: true
}
在应用程序适配器中,但我找不到任何关于 ember-network 是否有类似设置的信息。我看到在初始化程序中对我的 API 发出了请求,但是 api 没有 return 任何东西,因为不包括浏览器 cookie。
The fetch
API provides a credentials
option.。
这也记录在 ember-network
使用的 whatwg-fetch
库中。
所以基本上你可以做到
fetch("/foobar", { credentials:"include" }).then(...)