簡體   English   中英

如何將Cookie設置為HTTP請求?

[英]How can I set cookies to an HTTP Request?

我需要為HTTP請求設置cookie。

有可能做這樣的事情嗎?

$.ajax({
    method: "POST",
    url: "http://example.org/",
    dataType: "html",
    data: {
        game: "soccer",
        value: "2395",
        action: "newGame"
    },
    cookies: {
        "domain": ".example.org",
        "name": "SESSION",
        "path": "/",
        "value": "34645645765756757"
    }
}).done(function( msg ) {
    console.log(msg);
});

您無需顯式添加cookie到您的請求,它將發送您當前擁有的cookie。

如果您嘗試鏈接到另一個網站,則需要設置HTTP跨域訪問權限: https : //developer.mozilla.org/en-US/docs/Web/HTTP/CORS

和使用

$.ajax({
   url: a_cross_domain_url,
   xhrFields: {
      withCredentials: true
   }
});

您也可以嘗試在請求之前重置Cookie標頭

$.ajax({
  //...
  beforeSend: function(request) {
    request.setRequestHeader("Cookie", "name=value; name2=value2; name3=value3");
  },
  //...
});

對於所有相同的域請求,將自動發送和接收Cookie。

如果需要發送和接收設置withCredentials跨域cookie。 您無法控制這些Cookie是什么

$.ajax({
   url: a_cross_domain_url,
   xhrFields: {
      withCredentials: true
   }
   //... other options
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM