无法将网址加载到JSON模型中

2020-08-26 13:19发布

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

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


你好*

我是SAP的新手,正在开发我的第一个应用程序。

我尝试从本地REST服务(node.js)加载JSON数据。 从URL加载JSON数据根本不起作用,而从本地文件系统加载JSON文件则可以正常工作。 我还尝试了以下链接下提出的解决方案( JSONModel 无法从URL加载),但无法正常运行。

在这里您可以看到我当前正在使用的代码:

index.js

 var sURL =" http://localhost:3000/about"; //本地REST服务的URL
 var oModel = new sap.ui.model.json.JSONModel(sURL);
 sap.ui.getCore()。setModel(oModel);

 new Text({text:" {/banner} | {/version}"})。placeAt(" content");
 

有什么想法可以连接我的本地REST服务吗?

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

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


你好*

我是SAP的新手,正在开发我的第一个应用程序。

我尝试从本地REST服务(node.js)加载JSON数据。 从URL加载JSON数据根本不起作用,而从本地文件系统加载JSON文件则可以正常工作。 我还尝试了以下链接下提出的解决方案( JSONModel 无法从URL加载),但无法正常运行。

在这里您可以看到我当前正在使用的代码:

index.js

 var sURL =" http://localhost:3000/about"; //本地REST服务的URL
 var oModel = new sap.ui.model.json.JSONModel(sURL);
 sap.ui.getCore()。setModel(oModel);

 new Text({text:" {/banner} | {/version}"})。placeAt(" content");
 

有什么想法可以连接我的本地REST服务吗?

付费偷看设置
发送
6条回答
愤怒的猪头君
1楼 · 2020-08-26 13:38.采纳回答

大家好

确定了问题的根本原因并解决了问题, Jun Wu 提供了正确的提示。 实际上,应用程序和REST服务都需要在同一服务器上运行。 在下面,您可以看到为了完成任务而做了的事情:

1)首先,我在apache2网络服务器中使用了代理定义,如下所示:

apache2.conf

#个用于定义代理的加载模块
 LoadModule proxy_module/usr/lib/apache2/modules/mod_proxy.so
 LoadModule proxy_http_module/usr/lib/apache2/modules/mod_proxy_http.so

 #定义代理定义,选择术语"节点"
 ProxyPass/node http://localhost:3000 

注意:要使更改生效,需要重新启动apache2服务。

应用代理设置后,可以像这样访问REST服务(现在看起来与应用程序来自同一服务器)

REST服务的新可用URL

 http://localhost/node/about 

要记住的应用程序URL

 http://localhost/myapp 

2)然后,我只需要应用新的URL字符串:

index.js

 var sURL =" http://localhost/node/about"; //本地REST服务的新URL
 var oModel = new sap.ui.model.json.JSONModel(sURL);
 sap.ui.getCore()。setModel(oModel);

 new Text({text:" {/banner} | {/version}"})。placeAt(" content"); 

就这样,它可以正常工作。

ZJXianG
2楼-- · 2020-08-26 13:35

控制台中是否有任何错误?

CJones
3楼-- · 2020-08-26 13:44

如果您要休息的话,服务是

 http: //localhost:3000/about 

您的应用程序应托管在同一服务器上,否则,Web浏览器将不允许其余的呼叫通过。

 http://本地主机:3000/yourapp 
Nir深蓝
4楼-- · 2020-08-26 13:33

嗨,Mahesh

很抱歉告诉我我对SAP应用程序开发是全新的。 REST服务获取HHTP GET请求。 您是什么意思?

SC_Yao
5楼-- · 2020-08-26 13:54

您的浏览器具有带有多个选项卡的开发人员工具。 其中之一是"控制台"(镶边快捷方式:Ctrl + Shift + i或F12)。 打开ui5应用程序,然后打开开发工具,并查看控制台和/或"网络"选项卡,看是否出了问题(红色)。 像我说的那样,您可能需要在打开开发工具窗口时刷新(F5)。

SKY徐
6楼-- · 2020-08-26 13:52

就像我说的那样,您的应用程序应位于同一服务器上,否则您必须使用代理... ..

 http://localhost:3000/yourapp 

一周热门 更多>