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