簡體   English   中英

如何在javascript中獲取服務器端cookie值?

[英]How to get server side cookies value in javascript?

如何從JavaScript獲取服務器端cookie值。 在這里,我已經從服務器端聲明了cookie

我想檢查cookie是否為null

C#代碼:

String UserId = usrDT.Rows[0]["user_id"].ToString();
UserDAO.StorageCookies.myCookie = new HttpCookie("myCookie");
UserDAO.StorageCookies.myCookie.Values.Add("userid", UserId);
UserDAO.StorageCookies.myCookie.Expires = DateTime.Now.AddHours(5);
HttpContext.Current.Response.Cookies.Add(UserDAO.StorageCookies.myCookie);

JavaScript代碼

$(document).ready(function () {
    $(".edit-btn").click(function () {
        var cookies = '@HttpContext.Current.Request.Cookies["myCookie"].Value';
        alert(cookies);
        var v = $(this).data("textval");
        var qid = $(this).data("ques-qid");
        var getResponce = "http://localhost:1234/Models/answer.aspx?q=" + qid;
     if (cookies != "") {
        $.ajax({
            type: "GET",
            url: getResponce,
            data: {
                "Submit": "EditAnswer",
                "ans_id":v
            },
            success: function (msg) {
                var htmlEditor = $find("editAnswer_ctl02");
                htmlEditor.set_content(msg);
            }
        })
     } else {
         alert("elseCondition");
            $('.login-form').modal('show');
        }

    })
})

您的JavaScript可以選擇cookies作為存儲在客戶端瀏覽器中的cookies ,只需使用此功能即可

function getCookie(cname) {
   var name = cname + "=";
   var ca = document.cookie.split(';');

   for(var i=0; i<ca.length; i++) {
      var c = ca[i];
      while (c.charAt(0)==' ') c = c.substring(1);
      if (c.indexOf(name) == 0) return c.substring(name.length,c.length);
   }

   return "";
} 

你可以包含這個小的javascript庫(約800字節gzip!)。 https://github.com/js-cookie/js-cookie它曾經是一個jquery插件,但它對jquery的依賴性很小,所以他們把它作為自己的獨立庫。

讀取cookie:

<script src="/path/to/js.cookie.js"></script>

Cookies.get('name'); // => 'value'
Cookies.get('nothing'); // => undefined

如果您不想使用document.cookie,您可以使用cookie js來幫助獲取任何密鑰的值。請從https://github.com/js-cookie/js-cookie獲取js並查看它的用法。

暫無
暫無

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

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