Jquery Ajax调用没有设置cookie

时间:2013-09-16 20:54:43

标签: 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?

1 个答案:

答案 0 :(得分:3)

    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调用中发送的。