@abapify/asjson-parser

中文文档
0.4.34发布于 2026/11/03MITTypeScriptES Module构建来源已验证近 30 天下载 1931

Parser for SAP ABAP asJSON canonical format — maps ABAP asJSON payloads to/from plain JavaScript objects

原始使用文档

@abapify/asjson-parser

version

ABAP asJSON (canonical JSON representation) parser.

asJSON - Canonical JSON Representation

General asJSON format is based on %heap object delivering values and type metadata

So when we have a code like this:

REPORT ZTEST_HEAP.

start-of-selection.

types:
  begin of payload_ts,
    i type i,
    i_ref type ref to i,
  end of payload_ts.


  data(payload) = value payload_ts(
    i = 123
    i_ref = new #( 123 )
  ).

  data(json) = cl_sxml_string_writer=>create( if_sxml=>co_xt_json ).

  call transformation id
  source data = payload
        result xml json.

  cl_demo_output=>display_json( json = json->get_output( ) ).

the output it generates will be:

{
 "DATA":
 {
  "I":123,
  "I_REF":
  {
   "%ref":"#d1"
  }
 },
 "%heap":
 {
  "d1":
  {
   "%type":"xsd:int",
   "%val":123
  }
 }

The following library allows us to parse this payload as if we would deal with a regular ABAP object without data references

The code below

import { parse } from '@abapify/asjson-parser';
const parser;
console.log(parse(json));

would print the object like this:

{
 "DATA":
 {
  "I":123,
  "I_REF": 123
 }

Usage

  • as a parser
import { parse } from '@abapify/asjson-parser';
console.log(parse(json));
  • as a transformer
import { transform } from '@abapify/asjson-parser';
const object = JSON.parse(json);
console.log(transform(object));
  • as a proxy (returns a proxied object)
import { proxy } from '@abapify/asjson-parser';
const object = JSON.parse(json);
console.log(proxy(object));

版本与发布记录

@abapify/asjson-parser 共发布 33 个版本,首次发布于 2024/10/08;过去 12 个月发布了 29 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.4.34latest2026/11/035 天前
0.4.332026/11/026 天前
0.4.322026/11/026 天前
0.4.302026/10/318 天前
0.4.292026/10/309 天前
0.4.272026/10/309 天前

关于 @abapify/asjson-parser 的常见问题

@abapify/asjson-parser 是什么?

Parser for SAP ABAP asJSON canonical format — maps ABAP asJSON payloads to/from plain JavaScript objects

如何安装 @abapify/asjson-parser?

在项目目录运行 npm install @abapify/asjson-parser,或使用 pnpm add / yarn add / bun add。

@abapify/asjson-parser 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@abapify/asjson-parser 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@abapify/asjson-parser 可以商用吗?

@abapify/asjson-parser 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@abapify/asjson-parser 的下载量有多少?

根据 npm 官方下载统计,@abapify/asjson-parser 在 2026/10/05 – 2026/11/03 这 30 天内被下载 1,931 次,日均约 64 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@abapify/asjson-parser 还在维护吗?

最新版本 0.4.34 发布于 2026/11/03(5 天前);至今共发布 33 个版本,其中过去 12 个月发布了 29 个;首次发布于 2024/10/08。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。