第三方系统或者工具通过 HTTP 请求发送给 ABAP 系统的数据,应该如何解析试读版

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: 第三方系统或者工具通过 HTTP 请求发送给 ABAP 系统的数据,应该如何解析试读版

本教程第 37 篇文章,我们介绍了如何在 SAP ABAP 系统 SICF 事务码里,开发一段 ABAP 代码,用来响应通过浏览器或者第三方工具,比如 curl,Postman 发起的 HTTP 请求。

在实际的 ABAP 集成项目中,这种方式非常使用。比如客户的第三方系统或者应用,通过 HTTP 协议,向 ABAP 系统发起数据交互请求,我们开发的 ABAP 程序,就可以响应这些请求。

本教程第 37 篇文章,通过浏览器访问我们开发好的 ABAP 类,收到了你好的回应。

后来有朋友催更后续步骤了,本文就来解答,介绍如果第三方应用通过 HTTP 请求传递更多参数,应该如何实现。

如何响应通过 HTTP 请求 url 传递进来的参数

先看实现效果:

通过 Url http://<host>:50055/sap/crm/csdn?name=jerry&age=41 向 ABAP 服务器发起请求,其中问号后面的 name=jerry&age=41 是通过键值对的方式进行的参数传递。参数名称为 nameage,参数值为 jerry41。多于一个的参数,通过符号 & 连接。

地址栏里输入 url 之后,点击回车,能看到 ABAP 程序发送的回复。回复只是简单的将 HTTP 请求参数值打印出来,证明 ABAP 服务器端接收到了这两个参数并进行了处理。

如何响应通过 HTTP 请求发送过来的 JSON 数据

除了请求方通过浏览器地址栏里拼接 url 参数的方式,传递参数之外,第三方通过 Postman 等工具,以 HTTP POST 类型的请求传递数据,也是实际 ABAP 集成项目中经常遇到的场景。

我们首先打开 Postman 这个软件,新建一个 HTTP 请求,类型指定为 POST, 然后点击 Body 面板,选择 raw 和 JSON,如下图所示:

Postman 点击 Send 按钮之后,收到 HTTP 200 OK 的响应状态码,并且将 JSON 格式的请求内容,以字符串拼接的方式,返回给 Postman.

源代码和实现分析,见此处

相关文章
|
15天前
|
监控 网络协议 应用服务中间件
【Tomcat源码分析】从零开始理解 HTTP 请求处理 (第一篇)
本文详细解析了Tomcat架构中复杂的`Connector`组件。作为客户端与服务器间沟通的桥梁,`Connector`负责接收请求、封装为`Request`和`Response`对象,并传递给`Container`处理。文章通过四个关键问题逐步剖析了`Connector`的工作原理,并深入探讨了其构造方法、`init()`与`start()`方法。通过分析`ProtocolHandler`、`Endpoint`等核心组件,揭示了`Connector`初始化及启动的全过程。本文适合希望深入了解Tomcat内部机制的读者。欢迎关注并点赞,持续更新中。如有问题,可搜索【码上遇见你】交流。
【Tomcat源码分析】从零开始理解 HTTP 请求处理 (第一篇)
|
7天前
|
存储 JSON Go
在Gin框架中优雅地处理HTTP请求体中的JSON数据
在Gin框架中优雅地处理HTTP请求体中的JSON数据
|
4天前
|
JSON Java 数据格式
java操作http请求针对不同提交方式(application/json和application/x-www-form-urlencoded)
java操作http请求针对不同提交方式(application/json和application/x-www-form-urlencoded)
10 1
|
24天前
|
JSON JavaScript 前端开发
Haskell中的数据交换:通过http-conduit发送JSON请求
Haskell中的数据交换:通过http-conduit发送JSON请求
|
2月前
|
监控 网络协议 Java
Tomcat源码解析】整体架构组成及核心组件
Tomcat,原名Catalina,是一款优雅轻盈的Web服务器,自4.x版本起扩展了JSP、EL等功能,超越了单纯的Servlet容器范畴。Servlet是Sun公司为Java编程Web应用制定的规范,Tomcat作为Servlet容器,负责构建Request与Response对象,并执行业务逻辑。
Tomcat源码解析】整体架构组成及核心组件
|
2月前
|
存储 NoSQL Redis
redis 6源码解析之 object
redis 6源码解析之 object
58 6
|
21天前
|
存储 缓存 Java
什么是线程池?从底层源码入手,深度解析线程池的工作原理
本文从底层源码入手,深度解析ThreadPoolExecutor底层源码,包括其核心字段、内部类和重要方法,另外对Executors工具类下的四种自带线程池源码进行解释。 阅读本文后,可以对线程池的工作原理、七大参数、生命周期、拒绝策略等内容拥有更深入的认识。
什么是线程池?从底层源码入手,深度解析线程池的工作原理
|
25天前
|
开发工具
Flutter-AnimatedWidget组件源码解析
Flutter-AnimatedWidget组件源码解析
|
21天前
|
设计模式 Java 关系型数据库
【Java笔记+踩坑汇总】Java基础+JavaWeb+SSM+SpringBoot+SpringCloud+瑞吉外卖/谷粒商城/学成在线+设计模式+面试题汇总+性能调优/架构设计+源码解析
本文是“Java学习路线”专栏的导航文章,目标是为Java初学者和初中高级工程师提供一套完整的Java学习路线。
176 37
|
13天前
|
编解码 开发工具 UED
QT Widgets模块源码解析与实践
【9月更文挑战第20天】Qt Widgets 模块是 Qt 开发中至关重要的部分,提供了丰富的 GUI 组件,如按钮、文本框等,并支持布局管理、事件处理和窗口管理。这些组件基于信号与槽机制,实现灵活交互。通过对源码的解析及实践应用,可深入了解其类结构、布局管理和事件处理机制,掌握创建复杂 UI 界面的方法,提升开发效率和用户体验。
64 12
下一篇
无影云桌面