2

我正在从 html 页面(移动设备)向 .net 服务器进行 ajax 调用以进行登录和身份验证。现在我正在发送一个成功的 JSON 响应:true。这一切都很好,但我需要设置 cookie,以便在登录后进行其他调用以记录数据时记住用户。

我读过有关使用 JSONP 的信息,但如果我不必这样做,我宁愿不走那条路,因为这意味着要改变很多。我只想在响应中发回 cookie 并在客户端手动设置它。

如何在 .net 的服务器端检索此 cookie(或创建 cookie?”并在响应中发回?

4

2 回答 2

3

在你success的ajax事件中,你可以在客户端设置cookie

假设你JSON是这样的

  {    "success": "true",    "username": "scott"   }

在您的 ajax 函数中,检查 JSON,如果成功项值为 true,则设置 cookie。

$.ajax({
        url: "someserverpage.aspx",
        success: function(data) {
           if(data.success=="true")
           {
              SetCookie("YoursiteUsername",data.username,365);                   
           }
        }
});

SetCookie 函数设置 cookie。

function SetCookie(c_name,value,exdays)
{
  var exdate=new Date();
  exdate.setDate(exdate.getDate() + exdays);
  var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
  document.cookie=c_name + "=" + c_value;
}
于 2012-08-10T15:32:23.343 回答
1

在检测到您的成功:真响应后,您可以使用 javascript 设置 cookie 客户端。

于 2012-08-10T15:27:54.190 回答