在java中检索cookieContainer中的数据

时间:2016-06-16 10:09:52

标签: java c# cookies unity5 cookiecontainer

我正在开发一个使用Unity引擎的游戏,它必须从客户端C#向服务器端发送cookie - Java,我面临这个问题(可能是跨平台问题?我不确定)

我在客户端写了一堆代码,就像这样

private HttpWebRequest request(){
    try{
        string url = "http://localhost:8080/...";
        var request = (HttpWebRequest)WebRequest.Create(url);
        request.Timeout = 15000;
        request.KeepAlive = true ;
        request.Method= "GET";

        CookieContainer cookieContainer = new CookieContainer();
        Cookie Authentication = new Cookie("Session" , "09iubasd");
        Authentication.Domain = url;
        cookieContainer.Add(Authentication);
        request.CookieContainer = cookieContainer;
        request.Headers.Add("testting", "hascome");
        return request;
    }catch(System.Exception ex){
        Debug.Log("[Exception]" + ex);
        throw ex;
    }

}

并且服务器端正在Java Spring中编写。我无法在服务器端的CookieContainer中检索Cookie数据。任何人都可以给我任何建议或任何解决方案来解决这个问题吗?或类似于Java中的CookieContainer。我用谷歌搜索但似乎没办法,如果这是一个愚蠢的问题那么请教我。非常感谢。 文斯

1 个答案:

答案 0 :(得分:1)

我只是找出原因,我的cookie域设置错误。

这里新的测试代码我刚修好。希望这对未来有同样问题的人有所帮助(因为如果没有人面对这个愚蠢的问题,那一定很棒)

private HttpWebRequest request(){
    try{
        System.Uri uri = new System.Uri("http://localhost:8080/...");
        var request = (HttpWebRequest)WebRequest.Create(uri);
        request.Timeout = 15000;
        request.KeepAlive = true ;
        request.Method= "GET";

        Cookie Authentication = new Cookie("Session" , "09iubasd");
        Authentication.Domain = uri.Host;
        request.CookieContainer = new CookieContainer();
        request.CookieContainer.Add(Authentication);
        request.Headers.Add("testting", "hascome");
        return request;
    }catch(System.Exception ex){
        Debug.Log("[Exception]" + ex);
        throw ex;
    }

}