-1

我试图找出如何获取有关外部会话 ID 的信息?我在 abap 堆栈的最顶层看到它: 在此处输入图像描述

但是,在 Data Provider 类中没有找到任何访问此变量的方法。你有小费吗?

4

2 回答 2

0

session_id 实际上是在 IF_HTTP_SERVER 接口中指定的静态属性。由于 ABAP 会话的工作方式,不可能在同一个 ABAP 会话中同时处理两个 HTTP 请求,所以我认为将 session_id 设置为静态是有意义的。

无论如何,您可以在 DPC_EXT 类中执行类似的操作来获取会话:

DATA(lv_session) = cl_http_server=>if_http_server~session_id.

上述代码的结果

于 2017-02-26T08:42:09.107 回答
0

我有同样的问题,并得到了与 Serban 提供的相同的解决方案。但是,我希望从同一个浏览器窗口发送多个请求将具有相同的会话 ID——顺便说一句,我对会话 ID 的理解是什么。情况似乎并非如此:从同一浏览器窗口到同一服务的后续 odata 调用(实际上是完全相同的服务调用)在调试器中总是显示不同的 sessionid。所以我认为abap端的sessionid并不是真的有用。

于 2017-02-28T09:53:28.307 回答