搜尋

首頁  >  問答  >  主體

javascript - Jquery的$.get()方法在發送請求的時候怎麼能帶上cookie?

Jquery的$.get()方法在發送請求的時候怎麼才能帶上cookie?

黄舟黄舟2724 天前1330

全部回覆(6)我來回復

  • 滿天的星座

    滿天的星座2017-06-15 09:24:34

    在同一個網域下,自動就會帶上cookie

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-06-15 09:24:34

    首先,jquery的get方法和post方法都是對ajax的一種封裝,見源碼

    jQuery.each( [ "get", "post" ], function( i, method ) {
    jQuery[ method ] = function( url, data, callback, type ) {
    
        // Shift arguments if data argument was omitted
        if ( jQuery.isFunction( data ) ) {
            type = type || callback;
            callback = data;
            data = undefined;
        }
    
        // The url can be an options object (which then must have .url)
        return jQuery.ajax( jQuery.extend( {
            url: url,
            type: method,
            dataType: type,
            data: data,
            success: callback
        }, jQuery.isPlainObject( url ) && url ) );
    };

    } );`

    然後,發送請求的時候要怎麼帶上cookie?
    ajax方法發送請求的時候,會自動帶上你所登入的網域的cookie,不需要你設定。

    所以,Jquery的$.get()方法什麼時候都會帶cookie

    回覆
    0
  • typecho

    typecho2017-06-15 09:24:34

    使用的時候客戶端會自動帶上cookie,jquery已經封裝好了,如果你想自己自訂cookie的話,可以使用$.cookie外掛程式去設定客戶端cookie最後get。

    關於調試,你可以開啟控制台F12,在network查看請求頭中的信息

    回覆
    0
  • 巴扎黑

    巴扎黑2017-06-15 09:24:34

    先在控制台Application裡面的cookies選項裡面找找,cookies設定get成功了沒。如果有設定好,客戶端在同一網域下,會自動在每個頁面帶上cookie的。

    回覆
    0
  • 学习ing

    学习ing2017-06-15 09:24:34

    發送請求時瀏覽器會自動攜帶cookie傳遞給後台的,只有localStorage/sessionStorage的參數要傳遞的話需要非同步時以參數傳遞

    回覆
    0
  • 为情所困

    为情所困2017-06-15 09:24:34

    **$.support.cors = true;**
    $.ajax({
                url: urls.getDetailList,
                type: "get",
                dataType: "json", 
                **xhrFields: { withCredentials: true },**
                success: function(res) {}
    })

    你應該是$.support.cors跨域沒打開,加端程式碼就可以 withCredentials,另外後端也要配跨域才行

    回覆
    0
  • 取消回覆