Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我试图找出如何获取有关外部会话 ID 的信息?我在 abap 堆栈的最顶层看到它:
但是,在 Data Provider 类中没有找到任何访问此变量的方法。你有小费吗?
session_id 实际上是在 IF_HTTP_SERVER 接口中指定的静态属性。由于 ABAP 会话的工作方式,不可能在同一个 ABAP 会话中同时处理两个 HTTP 请求,所以我认为将 session_id 设置为静态是有意义的。
无论如何,您可以在 DPC_EXT 类中执行类似的操作来获取会话:
DATA(lv_session) = cl_http_server=>if_http_server~session_id.
我有同样的问题,并得到了与 Serban 提供的相同的解决方案。但是,我希望从同一个浏览器窗口发送多个请求将具有相同的会话 ID——顺便说一句,我对会话 ID 的理解是什么。情况似乎并非如此:从同一浏览器窗口到同一服务的后续 odata 调用(实际上是完全相同的服务调用)在调试器中总是显示不同的 sessionid。所以我认为abap端的sessionid并不是真的有用。