sap webapi接口

news/2025/3/25 4:01:14

接到任务说学一下创建api接口,所以记录一下

web api的概念:

调用外部web api还没弄,到时再说,这次只记录SAP 发布web api

事务码 se24 创建类

在INTERFACE中输入IF_HTTP_EXTENSION

在methods输入 GET和POST

双击第一栏的IF_HTTP_EXTENSION~HANDLE_REQUEST,进入代码编辑页面

输入自己编辑的代码,

METHOD if_http_extension~handle_request.
  DATA: lv_method TYPE string.  显式声明变量
  lv_method = server->request->get_method( ).  赋值操作

  CASE lv_method.

    WHEN 'GET'.
      me->get( server ).

    WHEN 'POST'.
      me->post( server ).

    WHEN OTHERS.
      server->response->set_status( code = 405 reason = '请求方法不支持请联系管理员' ).

  ENDCASE.

* lv_verb is http method such as GET, POST etc
  DATA lv_verb TYPE string .
  DATA lv_json TYPE string .

  lv_json = '{"value": [{"ID": 0,"Name": "Food"},{"ID": 1, "Name": "Beverages"}, {"ID": 2, "Name": "Electronics"}]}'.

* Only handles GET method
  lv_verb = server->request->get_header_field( name = '~request_method' ).

  CHECK lv_verb = 'GET'.
  server->response->set_status( code = 200 reason = 'Ok' ).
  server->response->set_content_type( 'application/json' ).
  server->response->set_cdata( data = lv_json ).
ENDMETHOD.

这里不编写代码的话之后测试接口会报错

选择第二栏的get,再点击parameters,加上server

同样的步骤给post也加上

不然会之前程序那里会报错

点击保存后激活

事务码SICF

创建服务并激活

填写描述

输入登录数据,如果不维护,系统对接则需要传入这些数据

在处理器清单这填写刚刚创建的类

点击保存,回到刚刚的页面

激活服务

测试服务

数据就这么水灵灵地出来了

注:注意传参是parameters 还是body,SAP目前是在parameters。如果想放在body,还需要测试

注:可参考生产系统的类ZCL_REST_IF_SD02

注:测试软件Postman


http://www.niftyadmin.cn/n/5889961.html

相关文章

进程(下)【Linux操作系统】

文章目录 进程的状态R状态:S状态:D状态:T状态t状态Z状态:孤儿进程X状态: 进程的优先级如果我们要修改一个进程的优先级重置进程优先级 进程切换进程的调度 进程的状态 在内核中,进程状态的表示&#xff0c…

OpenCV开发笔记(八十三):图像remap实现哈哈镜效果

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/146213444 长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV…

铁塔倾斜监测:保障基础设施安全的关键技术

​ ​在现代社会,电力、通信等关键基础设施的稳定运行对于经济发展和社会生活至关重要。然而,这些设施中的铁塔却常常面临自然灾害和长期使用带来的安全隐患。想象一下,如果一座重要的通信铁塔突然倾倒,不仅会造成巨大的经济损…

电脑一直重启怎么解决 原因及解决方法

电脑一直重启的故障状态,不仅影响电脑的正常使用,还可能导致数据丢失或损坏。那么,电脑一直重启是什么原因呢?又该如何解决呢?下面将为大家介绍电脑一直重启的常见原因和解决方法,帮助您恢复电脑的正常工作…

计算机操作系统(二) 操作系统的发展过程

计算机操作系统(二) 操作系统的发展过程 前言一、未配置操作系统的计算机系统二、单道批处理系统三、多道批处理系统四、分时系统五、实时系统六、微机操作系统七、嵌入式操作系统八、网络操作系统九、分布式操作系统总结(核心概念速记&#…

反射、 Class类、JVM的类加载机制、Class的常用方法

DAY11.1 Java核心基础 反射 重点和难点,应用面很广 大部分库和框架都需要用到反射机制,它是动态语言的关键,但是概念抽象不好理解 反射:通过实例化类映射到类,从而获取类的信息 概括说就是:常规情况是…

【性能优化】MySQL 生产环境 SQL 性能优化实战案例

🚀 MySQL 生产环境 SQL 性能优化实战案例 🏗️ 背景介绍 最近在处理一个项目时,发现在生产环境的工作流相关接口中,某些查询的执行时间异常缓慢,尽管数据量仅为 2 万条。经过分析,发现以下 SQL 语句执行非…

FreeRTOS之队列集

文章目录 用途创建队列集把队列加入队列集读取队列集 用途 一个任务可能需要从多个不同的数据源接收数据,如果没有队列集,任务需要在多个队列之间进行轮询,可能导致任务在某些情况下无法及时响应。使用队列集,任务可以以阻塞的方…