CAP -OData V2适配器

2020-08-25 22:41发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 对于我们开发的应用程序,...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

对于我们开发的应用程序,我需要在V2中公开OData,我发现我们可以使用v2适配器。

我使用了" @ sap/cds-odata-v2-adapter-proxy",但是它给出了内部服务器错误,并且没有相关的应用程序日志

>

我不确定服务器中是否缺少某些内容。 js。 您能帮忙吗?

server.js

"使用严格";
  const https = require(" https");
  const port = process.env.PORT ||  3000;
  const server = require(" http")。createServer();
  const cds = require(" @ sap/cds");
 //为XSA UAA和HDBEXT中间件初始化Express App
  const xsenv = require(" @ sap/xsenv");
  const xssec = require(" @ sap/xssec");
  const xsHDBConn = require(" @ sap/hdbext");
  const express = require(" express");
  const odatav2proxy = require(" @ sap/cds-odata-v2-adapter-proxy")
  https.globalAgent.options.ca = xsenv.loadCertificates();
  global .__ base = __dirname +"/";
  global .__ uaa = process.env.UAA_SERVICE_NAME;
 
  var app = express();
  
  var hanaOptions = xsenv.getServices({
  哈娜:{
  计划:" hdi共享"
  }
  });

//CDS OData V4处理程序
  var options = {
  种类:" hana",
  logLevel:"信息"
  };
  cds.connect(选项);
  var odataURL ="/img/catalog";
 //主应用
  cds.serve(" gen/csn.json",{
  crashOnError:错误
  })
  .at(odataURL)
  .with(require(" ./lib/handlers"))
  .in(app)
  .catch((err)=> {
  console.log(err);
  process.exit(1);
  });

 //将任何重定向到服务根
  app.get("/",(req,res)=> {
  res.redirect(odataURL);
  });
  app.use(odatav2proxy({port}));
   
  require(" ./router")(应用程序,服务器);

 //启动服务器
  server.on(" request",app);
  server.listen(port,function(){
  console.info(`HTTP Server:$ {server.address()。port}`);
  });
 

谢谢

4条回答
d56caomao
2020-08-25 23:26

请尝试使用自述文件中的编码: cds-odata-v2-adapter-proxy 。 当您在package中定义此依赖项时,CAP将自动包含@ sap/xssec。

-OData V4服务是否按预期工作? 即/catalog

-您使用哪个版本的CDS OData v2适配器代理?

-您能否将server.js简化为仅需的命令:

即删除行...

xsHDBConn = require(" @ sap/hdbext");
https.globalAgent.options.ca = xsenv.loadCertificates(); < br> global .__ base = __dirname +"/"; global .__ uaa = process.env.UAA_SERVICE_NAME;

-是否有机会设置异常断点,以提示发生错误的地方?

-process.env.XS_APP_LOG_LEVEL =" debug"是否提供更多的日志结果?

-是否有可用的堆栈跟踪?

-CDS模型的外观如何?

一周热门 更多>