javascript - Jquery Ajax 调用不设置 cookie

标签 javascript jquery ajax cookies

我检查了请求,可以看到:

Set-Cookie:.AspNet.Cookies=AQAAANCMnd8BFdERjHoAwE_Cl-sBAAAAFyzOzXtC90-nkj7osKIxHgAAAAACAAAAAAAQZgAAAAEAACAAAAB68msx5mvbIc_UOFEpHKgyKg8z4X75MKKk5Notp79FeAAAAAAOgAAAAAIAACAAAAD8G4ZvSLWFoqp7TVme89yuoX0Kd7V6uYe-WEeeSoYClvAAAAB1vGrXcVvzq7uUYiruKLJiGBpZJBDcOL3PBMRYnHv3VT202hC-4J-U-GGoJlWQz3MrEoq_vmEoE3tbsn09AAX06HZrhBl5ZvyLiTkCcJaAT_xeX-6Uv6fDWMHpezJ_xrhE8nVjOj8oBI2HhIjymzD1CaWCriFqPOQKSoC6OLOHurRUcZ6J8LHeKcsWsc4hm6z6VD-GgzHyHAzZ7OgHX6NMsBpkQ_6VX7e-lo-fUx4RG6sJRIKPHbbFGm8hpfNzFCffbS8nuGC7SMu9zoQLGdDcZx0ulxlQcSxpcfbaaPbb3l1FsM9YZOipQNyLRDQtN-5AAAAA2D6u3avm-yI1tnz-xqBLBus26s2IRF2vuBzDEFkTbG5PPYHY2ijq5-xMzkNlVNsgloQ-XjKhmy9JiX4YLkMSjQ%3D%3D; path=/; expires=Mon, 30-Sep-2013 21:49:58 GMT; HttpOnly

但是当我查看浏览器 cookie 时,这并没有设置。

$.ajax({
            url: this.path + id,
            beforeSend: (xhr) => this.setAuth(xhr),
            type: 'GET'
        })....

相关信息可能是它是跨源调用。 http://localhost:36859/http://127.255.0.1:8061/

我还需要做任何其他事情来设置 cookie 吗?

最佳答案

    return $.ajax({
        url: this.path + id,
        beforeSend: (xhr) => this.setAuth(xhr),
        type: 'GET',
        crossDomain: true,
        xhrFields: {
            withCredentials: true
        }
    }).fail((xhr, status, error) => {  
        console.log(arguments);           
        notification.showErrorMessage("Error Loading", notification.getErrorDetail(xhr));
    });

xhrFields 成功了。身份验证 cookie 随 webapi 调用一起发送。

关于javascript - Jquery Ajax 调用不设置 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18837150/

相关文章:

javascript - 从子页面调用时对话框模式窗口未关闭

javascript - 将 html div 传递给 ajax 调用

javascript - 需要帮助理解一个简短的 JavaScript 脚本

ajax - Express 中 'delete' 之后重定向

javascript - 如何在 ClojureScript 浏览器 REPL 中计时函数?

javascript - 访问导出变量的更改值

javascript - React 中的 onClick 函数不起作用?

javascript - 怎样才能让这个功能更加高效呢?

javascript - 一定时间间隔后自动更新页面

php - 电子邮件表格不起作用