/iwbep/cl_mgw_med_provider 类里的成员 mv_cache_active:
这个 cache 默认是开启状态。
调用 OData 服务的 MPC_EXT 类的 get_last_modified 方法获取最后一次修改的时间戳。这个时间戳(timestamp)也会影响到 cache 的行为,我们后续也会详细讨论。
第12 行 super 方法调用返回的 timestamp 是 0:
配置表:/iwbep/c_config
如果 share memory 缓存没有开启,就从 cluster 缓存表中读取 Metadata:
/iwbep/cl_mgw_med_utils=>get_cached_model(
EXPORTING
iv_last_modified = lv_last_modified - 20220817025754
iv_technical_name = iv_technical_name - ZBOOK_MANAGE_MDL
iv_version = iv_version - 0001
iv_is_busi_data_request = mv_is_busi_data_request
IMPORTING
es_model_data = ls_model - /IWBEP/IF_MGW_MED_ODATA_TYPES\TYPE=TY_S_MED_MODEL
ev_found = lv_found ).
tcode:/iwbep/cache
由于 SAP Gateway 安装在 AS ABAP 之上,因此无论选择实施何种部署选项,它都可以在现有的系统环境中运行。
可以通过以下方式之一安装 SAP Gateway:
除了使用标准的身份验证和授权机制外,SAP Gateway 还针对跨站点脚本 (XSS) 和请求伪造 (CSRF) 攻击提供额外级别的保护。
下图是客户端应用程序(例如,代表用户执行 OData 调用的 PHP 页面)通过 SAP Gateway 到 SAP ERP 的请求的数据流示例。
AS ABAP 为 SAP Gateway 提供用户身份验证和单点登录 (SSO) 功能。
SAP Gateway 支持使用以下身份验证机制: