如何在IBM i(OS/400)上使用RPG编写RESTful API
作者:佚名
上传时间:2023-04-28
运行软件:RPGLE
软件版本:OS/400 V7R1
版权申诉
本示例代码演示如何使用IBM i(OS/400)上的RPG编写RESTful API。通过该示例代码,您可以了解到RPG如何通过数据结构和列表定义请求和响应,并使用IBM i上的HTTP服务来支持RESTful API请求。
**Free
/define free( t ) with %str( ' ' ): resulting( t )
*=================================================================
* Data Structures
*=================================================================
// Division to access JSON data
dcl-ds Division qualified;
value character(25);
end-ds;
// Data to retrieve
dcl-ds Data qualified;
division Division(10) dim(10);
end-ds;
// Response
dcl-ds Response qualified;
status char(3);
data Data;
end-ds;
// Error Response
dcl-ds ErrorResponse qualified;
status char(3);
message char(125);
end-ds;
*===================================================================
* Procedure prototypes
*===================================================================
// Retrieve Data
dcl-pr GetData extpgm( 'GETDATA' );
FROM char(10);
TO char(10);
DIV char(10) dim(10);
end-pr;
// Return JSON Data
dcl-pr ReturnJson;
response likeds( Response );
end-pr;
// Return Error
dcl-pr ReturnError;
error likeds( ErrorResponse );
end-pr;
// JSON Data to DS
dcl-pr JSON2DS extpgm( 'JSON2DS' );
jsonString char(32767) varying;
structure * value like( Data );
end-pr;
// DS to JSON Data
dcl-pr DS2JSON extpgm( 'DS2JSON' );
structure * value like( Data );
jsonString char(32767) varying;
end-pr;
*===================================================================
* Subroutines
*===================================================================
// GET Request to retrieve Data
Begsr DataRequest;
// Retrieve query params
qs = %trim( http_query_string );
qsDec = JSON2DS(qs: Division);
if (result = GetData(FROM: qsDec.division(1).value : qsDec.division(2).value :
divDS) <> *blanks);
errResp.status = '500';
errResp.message = 'Internal server error';
ReturnError(rpError);
return;
else;
Response.status = '200';
Response.data = divDS;
ReturnJson(Response);
endif;
endsr;
*===================================================================
免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com
用户评论
相关推荐
如何在IBM i(OS/400)上使用RPG编写RESTful API
本示例代码演示如何使用IBM i(OS/400)上的RPG编写RESTful API。通过该示例代码,您可以了解到RPG如何通过数据结构和列表定义请求和响应,并使用IBM i上的HTTP服务来支持RE
OS/400 V7R1
RPGLE
2023-04-28 20:52
如何在 IBM i (OS/400) 中使用 RPG 编写 RESTful API
本篇文章将介绍如何使用 IBM i (OS/400) 的 RPG 语言编写 RESTful API。这个示例程序将自定义资源和子资源的处理,并提供了基本的 GET、POST、PUT 和 DELETE
IBM i 7.3
IBM RPG compiler
2023-05-29 02:21
在IBM i(OS / 400)上使用RPG编写RESTful服务
本示例使用IBM i(OS / 400)上的RPG编写RESTful服务,实现了读取和写入数据的功能。该RESTful服务使用JSON作为数据格式,并可以通过HTTP请求进行访问。/free
IBM i 7.2
IBM RPG IV
2023-04-15 13:52
在IBM i (OS/400)上使用RPG制作RESTful API
这是一篇介绍如何在IBM i (OS/400)上使用RPG制作RESTful API的文章,其中包含示例代码以及解释。dcl-pr MyApp get export;
IBM i (OS/400) V7R4M0
RPG语言
2023-04-30 16:04
在IBM i(OS/400)上使用RPG编写REST API
本示例展示了如何在IBM i (OS/400)上使用RPG编写REST API。这个示例将使用IBMi的集成web服务来处理REST请求和响应,并使用IREST(IBM的RPG扩展,用于处理REST)
IBM i (OS/400) V7R2M0
IBM Rational Developer for i (RDi)
2023-04-12 19:15
在IBM i(OS/400)上使用RPG编写调用API的代码
介绍如何使用RPG编写调用API的代码,以调用IBM i操作系统中的函数和服务。//PASE API调用示例 ctl-opt dftactgrp(*no) actgrp('MYACTGR
IBM i 7.3
RPG编译器
2023-04-28 00:40
在IBM i (OS/400)上使用RPG编程语言(IBM i (OS/400))
IBM i (OS/400)是一种流行的操作系统,广泛用于企业级应用程序的开发和部署。其中,RPG编程语言是一种高级编程语言,适用于开发企业级应用程序。本文将介绍在IBM i (OS/400)上使用R
IBM i (OS/400) V7R4,Rational Developer for i 9.6
Rational Developer for i
2023-04-03 04:01
如何在IBM i (OS/400)上运行RPG程序
本文将介绍如何在IBM i (OS/400) 操作系统上运行RPG程序,同时提供一些示例代码和代码释义,以及总结。示例代码以下是一个简单的RPG程序示例: FMyFile IF
7.3
IBM i Access Client Solutions
2023-04-10 00:14
如何使用IBM i (OS/400)编写RPG程序
IBM i (OS/400)是IBM公司推出的一款企业级操作系统,其中包含了RPG编程语言,可用于开发大型企业级应用程序。下面将介绍如何使用IBM i (OS/400)编写RPG程序。 示例代码下
IBM i 7.4, Rational Developer for i 9.7
Rational Developer for i 9.7
2023-03-14 04:35
如何在IBM i (OS/400)上使用RPG程序选择排序
该示例代码演示了如何在IBM i (OS/400)上使用RPG程序实现选择排序算法。选择排序是一种简单而直观的排序算法,它的原理是找到数据中最小值,并将其放在第一位,然后再找到次小值,以此类推。该示例
IBM i 7.4
RPGLE语言
2023-03-21 16:35