【问题标题】:How do I convert an NSHttpCookie to a System.Net.Cookie in MonoTouch?如何在 MonoTouch 中将 NSHttpCookie 转换为 System.Net.Cookie?
【发布时间】:2012-02-03 08:40:18
【问题描述】:

我有一个通过 Azure 访问控制服务进行联合登录的 MonoTouch iPhone 应用。登录是通过嵌入式 UIWebView 浏览器完成的。登录完成后,我想将 cookie 传输到我的应用程序中。我可以访问

NSHttpCookieStorage.SharedStorage.Cookies

collection,所以我可以找到 cookie。但是为了调用后端服务,我需要有一个

System.Net.Cookie

我可以放入 CookieContainer 以发送到服务。

如何在两者之间转换...这是唯一的方法吗?

NSHttpCookie cookie = NSHttpCookieStorage.SharedStorage.Cookies[0];
System.Net.Cookie newCookie = new System.Net.Cookie()
    {
        Name = cookie.Name,
        Value = cookie.Value,
        Version = (int) cookie.Version,
        Expires = cookie.ExpiresDate,
        Domain = cookie.Domain,
        Path = cookie.Path,
        Port = cookie.PortList[0].ToString(), // is this correct??
        Secure = cookie.IsSecure,
        HttpOnly = cookie.IsHttpOnly
    };

【问题讨论】:

    标签: iphone xamarin.ios


    【解决方案1】:

    是的,这就是你可以转换的方式。也许你应该在 NSHttpCookie 上做一个扩展方法?然后你可以这样调用:

    var c = cookie.ToCLRCookie ();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-27
      • 1970-01-01
      • 2011-08-05
      • 1970-01-01
      • 2015-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多