【问题标题】:Cookies not included in cross-domain AJAX requests跨域 AJAX 请求中不包含 Cookie
【发布时间】:2014-01-13 06:16:55
【问题描述】:

我的 JavaScript 应用程序与我在另一个域中构建的 RESTful API 进行通信。在本地,API(基于 Sinatra)位于 localhost:9292,网站位于 localhost:3000。

在生产中,API 位于 api.mydomain.com,网站位于 admin.mydomain.com。

在本地开发模式下一切正常...当我在 Chrome 下查看请求的“标题”选项卡时,cookie 会随每个 AJAX 请求发送到 API。但是,在生产模式下,cookie 根本不会随请求一起发送。事实上 admin.mydomain.com 的 cookie 确实存在。

我了解以下 JavaScript 应该使 cookie 与请求一起跨域发送——我错过了什么吗?

$.ajaxPrefilter(function(options, originalOptions, jqXHR) {
  options.crossDomain = {
    crossDomain: true
  };
  options.xhrFields = {
    withCredentials: true
  };
});

有什么想法吗?

【问题讨论】:

标签: javascript rest cookies


【解决方案1】:

尝试将 cookie 域设置为“.mydomain.com”,并带有前导点。

【讨论】:

    猜你喜欢
    • 2014-04-27
    • 2015-12-21
    • 1970-01-01
    • 2012-02-09
    • 2020-06-30
    • 2019-02-11
    • 2013-01-05
    • 2017-02-02
    • 2013-03-06
    相关资源
    最近更新 更多