0

我在我的 android 应用程序中设置了一个与 cookieManager 中的域相关联的 HttpCookie。然后,当我使用 exo 播放器流式传输 HLS 视频时,我希望此 cookie 用于每个 .ts 块请求。

这是代码,我用来将 cookie 存储在项目的 Application 部分:

        String url1 = "http://sdtest.vzvisp.com";
        URI auri1 = null;
        try {
            auri1 = new URI(url1);
        } catch (URISyntaxException e) {
            e.printStackTrace();
        }

        AppGlobal.cookieManager = new CookieManager(null, CookiePolicy.ACCEPT_ALL);
        AppGlobal.cookieManager.getCookieStore().add(auri1, new HttpCookie("JSESSIONID","aaaMp0uKke4gp"));
        AppGlobal.cookieManager.getCookieStore().add(auri1,new HttpCookie("JSESSIONID1","aaaMp0uKke4gasasasp"));

        AppGlobal.currentHandler = CookieHandler.getDefault();
        if (AppGlobal.currentHandler != AppGlobal.cookieManager) {
            CookieHandler.setDefault(AppGlobal.cookieManager);
        }

这是发送的块请求的示例:

http://sdtest.vzvisp.com:22779/AppConfig/SIT/fios/hls/fios/fios_hls_1m_00004.ts?vzSvc=fU2h73FMzhPgj8w0VNqYYsQ3lVZq8jjIWr6Xfrmraq4=&vispVzKey=54038752&vispIconFg=1&vispUsr=ZPq5BrbWoSQm1nsCNTPfBA==&vispAuthSid=CIAAASAIuwE&vispExpTime=1481081538&vispAuthKey=36958733&vispAuthSign=7.23.GMoCIpxmT_k123kT3P8iJxmCF -BWmeiAXQontU11hUI

但是,当我检查数据包时,我没有看到发送的 cookie。有人可以帮助我吗?

谢谢。

4

1 回答 1

-1

尝试做这样的事情:

AppGlobal.cookieManager.setCookie("http://sdtest.vzvisp.com","JSESSIONID=aaaMp0uKke4gp; Domain=.vzvisp.com; Path=/; Version=1");

检查此票以查看如何正确设置 hls cookie:

希望这有帮助

于 2017-05-03T17:37:02.413 回答