我有一个要求,我需要嵌入一个外部应用程序到webDynpro ABAP,我计划使用IFrame嵌入。
我还需要从这个外部应用程序读取cookie信息到WebDynpro ABAP。
有什么想法吗?
你可以使用IFrame组件来嵌入外部应用。
WDA不提供对cookie的访问(除非两个应用程序在同一域,否则它们无论如何都无法访问对方的cookie)。
我建议使用一种古老的技术,但它实际上是有效的:
- 在SAP服务器上创建BSP应用程序,使用框架集和两个框架
- 其中一帧高度为100%,它将包含外部应用
- 另一帧的高度为零(所以它将是不可见的),它将包含BSP应用程序的视图和javascript代码
- 视图将包含带有隐藏字段的表单
- javascript代码将从可见框架中获取cookie,并将值填充到隐藏字段中并提交表单(这是假设您可以从框架到框架访问内容的地方,否则您将面临跨站点脚本问题)
- ABAP端的BSP应用程序将以这种方式接收cookie值作为表单数据,并可以在服务器端以某种方式传递给webdynpro应用程序(通过共享内存或其他东西)
这听起来像一个解决方案吗?