0

我正在登录通用 Windows 应用程序上的 WCF 身份验证服务,当我尝试访问 CookieContainer 时,它是空的。

Windows 8.1 应用程序上的相同代码可以正常工作。

我将基本绑定的 AllowCookies 设置为 true。这些服务位于 PCL 中,它允许我使用 CookieContainer 属性,当我直接在通用 Windows 应用程序上使用“添加服务引用”时,该属性不可用。

(UWP 应用)主页

var binding = new BasicHttpBinding(BasicHttpSecurityMode.None);
binding.AllowCookies = true;

new ClassLibrary1.Class1().Login(binding);

(PCL) 1 类

public class Class1
{
    public void Login(BasicHttpBinding binding)
    {
        var Client = new ServiceReference1.AuthenticationServiceClient(binding, new EndpointAddress("*****.svc"));

        Client.LoginAsync("*****", "*****", null, false);

        Client.LoginCompleted += (sender, args) =>
        {
            if (args.Result)
            {
                CookieContainer CookieContainer = Client.CookieContainer;
                CookieCollection Cookies = CookieContainer.GetCookies(Client.Endpoint.Address.Uri);

                Cookie Cookie = Cookies[".ASPXAUTH"];
            }
        };
        }
    }
}
4

0 回答 0