模拟 Cookie 响应
虽然 Mirage 允许在响应中设置标头,但 XMLHttpRequest 规范明确禁止访问Set-Cookie
和 Set-Cookie2
标头。因此,Mirage 响应无法通过标头设置 Cookie。
但是,您可以在路由函数处理程序中设置它们,在浏览器级别模拟从 ajax 调用接收 Cookie。
this.post("/users/login", (schema) => {
// log in for 24 hours
let now = new Date()
let cookieExpiration = new Date(now.getTime() + 24 * 3600 * 1000)
document.cookie = `remember_me=cookie-content-here; domain=.dev-domain; path=/; expires=${cookieExpiration.toUTCString()};`
return schema.users.find(1)
})
您的 JavaScript 客户端代码现在可以使用 document.cookie
访问任何设置的 Cookie。