【HANA系列】SAP HANA使用XS和HTTP创建proxy

公众号: SAP Technical
本文作者: matinal
 

 

前言部分

大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。

正文部分

创建代理由3个HANA开发工件组成:

1、一个server.xshttpdest文件,用于定义我们要访问的服务器的详细信息

2、一个用于URL重写的.xsaccess文件

3、一个用于程序逻辑的proxy.xsjs脚本

第一步:创建server.xshttpdest文件,内容及解释如下:

​
description = “描述”; 
host = “服务器URL”; 
port = 80;
useProxy = false; 
useSSL = false; 
authType = none; 
timeout = -1;

​


第二步:创建.xsaccess文件内容如下:

​
{
     “exposed” : true, 
     “authentication” : {
        “method”: “Basic”
     },
     “rewrite_rules”: [{
         “source”: “renderMap”,
         “target”: “proxy.xsjs”
     }],
     “cache-control”: “no-cache no-store”
}

​

第三步:创建proxy.xsjs文件内如如下:

function proxy() {
    var destPackage = “路径”;
    var destName = “服务器”;
    
    // 建立HTTP连接
    var dest = $.net.http.readDestination(destPackage, destName);
    var client = new $.net.http.Client();
    // 发送POST请求
    var req = new $.web.WebRequest($.net.http.POST, “/path/to/resource”);
 
    // 将原始请求的内容设置为请求
    req.setBody($.request.body.asString());
 
    // 发送请求并获取响应
    client.request(req, dest);
    var response = client.getResponse();
    $.response.status = $.net.http.OK;
    // 返回响应
    $.response.contentType = “application/json”;
    $.response.setBody(response.body.asString());
}
try {
     proxy();
} catch (e) {
    // 将错误返回为JSON进行调试

     var errorResponse = {“error”: e.toString()};
     $.response.status = $.net.http.INTERNAL_SERVER_ERROR;
     $.response.contentType = “application/json”;
     $.response.setBody(JSON.stringify(errorResponse));

}

​

 

转载于:https://www.cnblogs.com/SAPmatinal/p/11184322.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值