SAP 发布HTTP接口(RESTful方式)

文摘   2024-11-18 00:00   上海  

发布 http 接口,以供第三方系统调用

1.se24 创建一个类,并继承接口IF_HTTP_EXTENSION,

 2.回车后重写方法HANDLE_REQUEST,并添加GET,POST方法(根据自己的需求来)

3.根据实际业务对POST方法进行代码写入

method post.

***json以及内表参数 data:it_fybx type table of zsfbt002_type01 , gt_return type table of zsfbt002_type02, gv_message type char1, json_fybx type string, gv_return type string, json_return type string. data: lv_content_type type string. data:all_num type p, "传入json参数的字符个数 json_num type p. "实际需要的参数个数
" Delivers the HTTP body of this entity as character data json_fybx = server->request->get_cdata( ). "获取入参json数据 if json_fybx is initial. server->response->set_status( code = 404 reason = '未解析到Body参数,请检查' ). return. endif.
all_num = strlen( json_fybx ). json_num = all_num - 12.
json_fybx = json_fybx+11(json_num). zcl_json=>deserialize( exporting json = json_fybx changing data = it_fybx ). "将Json转换成内表
if it_fybx is not initial. call function 'ZF_FBT_002' importing message = gv_message tables it_fybx = it_fybx it_return = gt_return. call method zcl_json=>serialize "返回参数 内表转JSON exporting data = gt_return pretty_name = 'U' receiving r_json = gv_return. concatenate '{"IT_RETURN":' gv_return '}' into json_return. if gv_message = 'S'. server->response->set_cdata( json_return ). server->response->set_status( code = 200 reason = 'OK' ). "Sets current HTTP status code lv_content_type = 'application/json'. server->response->set_content_type( lv_content_type ). else.
server->response->set_cdata( json_return ).* server->response->set_status( code = 500 reason = 'ERROR' ). server->response->set_status( code = 200 reason = 'ERROR' ). endif. ELSE. server->response->set_status( code = 200 reason = 'Input Json Data Error' ). endif.
endmethod.

4.GUI端配置

Tcode: SICF  配置服务

在登录数据中没有设置账号密码的话 ,链接后面可以直接添加,比如:

http://sapqas.xxxxx.com:8001/zfbt/zfbt001?sap-client=800&sap-user=账号&sap-password=密码

对应的端口号查看或者更改Tcode:SMICM

 

使用soapui或者postman、apifox工具就可以直接测试了。

推荐一个可以替代Postman国产软件Apifox

这个仅仅测试例子,

实际生产过程中。

需要账号密码验证?

token

Base64 

MD5 

AES 

国算

等方式加解密以确保安全。

具体不展开讲,絮语可以付费咨询~

公众号上好像也有片段记录。


是老周,如果你喜欢我的文字,请记得点击⬇️关注我。


码字不易,文章下拉,右边点个【赞】和【在看】吧!!

猜您还喜欢合集:


解决方案

SAP优化

ABAP新语法

SAP Note

SAP

ABAP

懒人鱼


猜您还喜欢文章:

聊聊ABAP动态编程

SAP这样优化:乙方开心,甲方放心!

浅谈SAP/SSO介绍及应用

浅谈SAP/ 文档管理解决方案

浅谈SAP/某化学纤维行业客户-优化案例


曰天曰地
我要到哪里去↔️ 灵台方寸山,斜月三星洞。假如有一天全人类不存在,怎么证明人类存在过。AI怎么考古?会怎么考古⚠️
 最新文章