我在前端服务器中部署了一个自定义UI5应用程序(使用外部REST服务 - >另一个Java堆栈系统中托管的服务)。
我使用Ajax直接使用URL调用服务,如下所示。 当我使用" proxy"时,此应用已成功运行在本地主机(日食)。
- > Ajax Call code Snippet
所以我在前端部署时用目标url替换了代理。 (http://xxx.xxx:port)
从前端服务器运行时,我遇到了交叉原点错误,如下所示。
ERROR1 :其中的http:// XXX:端口/ XXX / ngservices /休息/查询/ ZQUE_WEBSERV_APPHISTORY / executeGet。对预检请求的响应没有通过访问控制检查:否'访问控制 - 允许 - 来源'标头出现在请求的资源上。起源' http://xxx:port'因此不允许访问。响应具有HTTP状态代码401>
在Chrome中启用CORS插件后,我发现了未经授权的错误,如下所示。
误差2 :其中的http:// XXX:端口/ XXX / ngservices /休息/查询/ ZQUE_WEBSERV_APPHISTORY / executeGet。预检的响应具有无效的HTTP状态代码401>
我从localhost运行时初始化了上述错误。之后我使用了代理并解决了它。
我刚刚在前端服务器中部署了应用程序并直接运行它。我还没有完成任何其他配置。
我是否需要为使用这些外部服务做任何额外配置,或者提出任何其他建议。
重要信息:
*能够从localhost调用外部服务(eclipse - >此处使用代理)但无法从前端服务器调用服务。
*前端架构:中央集线器部署,目前连接到SRM,HR和CRM后端。
问候
Phani Poorna
答案 0 :(得分:1)
这两个错误都可以通过在您的平台上创建和配置目的地来解决。
目标本质上是一个代理:在创建目标时,您可以指定后端URL,身份验证机制(主要传播/基本身份验证等)。从您的客户端,您只需要连接到目的地以查询后端。
Fiori前端服务器是什么意思?您是指HANA云平台上托管的Portal服务吗?
如果是这样,那么您可以通过从HCP帐户转到连接 - 目的地来创建目的地。在您的Fiori应用程序中,您需要使用以下URL模式连接目的地:
/destinations/<destination name>/<whatever you want to add to the URL the destination points to>
如果您使用的是其他PaaS,我相信它会有类似的方式在您的客户端和后端之间创建代理。 (编辑:我刚刚看到你正在使用中央集线器部署 - 我不熟悉这个系统,但它必须有一种非常类似的方式来创建目的地。)
希望这有帮助,如果您有任何问题,请与我联系。