本教程到目前为止开发的 OData 图书管理服务,可以在 ABAP 系统里对图书数据进行增删改查。
本步骤我们继续介绍如何通过 SAP OData 服务,实现向 ABAP 系统上传文件的需求。我们采取 Postman 进行文件上传。
先看一下通过本文介绍的步骤,实现的效果。
Postman 里使用的文件上传 url:https://{{host}}:{{port}}/sap/opu/odata/sap/ZBOOK_MANAGE_SRV/FileSet

通过 HTTP 请求的头部字段,指定自定义头部字段名称为 filename,头部字段值为实际上传的文件名,本例为 1332.txt.
注意,通过 Postman 上传文件到 ABAP 服务器,ABAP OData 框架无法智能地将本地文件的文件名提取出来,故而需要我们作为文件上传者,手动通过 HTTP 请求头部字段的方式,指定上传的文件名。
我本地的这个 1332.txt 文件,内容为一个 Hello World 字符串,对应的16进制内容为 68 65 6C 6C 6F 20 77 6F 72 6C 64
:

在 Postman 里上传这个本地文件后,收到 HTTP 201 Created 响应消息,如上图图例3 所示。
在 Postman 里点击 Body 然后再选择 binary,即可选择本地文件上传。

上传成功后,我们到 ABAP 服务器的自定义数据库表 ZFILE 里查看,发现有一条记录成功生成了:

并且文件内容确实是我们本地文本文件 Hello World 字符串对应的 16 进制内容。
下面是这个需求详细的实现步骤。
网友评论