代码之家  ›  专栏  ›  技术社区  ›  Vaidehi Patel

两个请求之间的会话id更改

  •  0
  • Vaidehi Patel  · 技术社区  · 13 年前

    我使用会话id来存储特定用户上传的文件,当用户点击按钮时,这些文件就会被下载。然而,我面临着一个问题。当我创建文件时,传入的会话id与同一用户在同一会话中的任何其他请求都不同。这会导致两个不同的会话ID,并且由于哪个用户在下载该文件时面临问题。同样的东西在文件中工作 IE 。这种情况只在Firefox中发生。Jaxb用于web服务,flex用于GUI。有人能帮助确定这里出了什么问题以及在哪一层出了问题吗?

    1 回复  |  直到 13 年前
        1
  •  0
  •   eddipedia    13 年前

    这个问题的出现可能是因为ActionScript中的文件上传(可能还有下载)会生成一个有自己生命周期的单独会话。我在一个基于Flex的应用程序中遇到了这个问题,我在该应用程序中使用了PHP作为后端。

    问题是,用户必须有上传媒体文件的能力,但只有当他登录到应用程序时才能上传。当启动一个新的文件上传时,ActionScript将在一个单独的会话下用自己的会话ID处理上传。我之所以能理解这一点,是因为由于用户和文件上传的会话冲突,用户在上传开始时被重定向回登录屏幕。

    您应该参考ActionScript的API文档 FileReference 类,以获取文件上传/下载过程中到底会发生什么的起点。

    只有在Firefox中才会出现这个问题,这可能源于为Firefox安装的Flash Player版本。可能存在一些特定于浏览器的错误或其他问题。