HANA XSA Fiori Launchpad XSUAA问题

2020-08-15 20:18发布

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

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


尊敬的专家,

我正在HANA XSA项目中使用Fiori Launchpad网站,但遇到奇怪的情况,我想解决:

在每个html5模块的xs-app.json中,我在模块页面本身的路由中设置了xsuaa。 我需要这样,以便令牌可以传递到所需的模块。 如果每个html5模块是单独启动的,没问题。

现在,如果我部署启动板,这将成为问题。 单击磁贴时,启动板会收到以下消息:

因此,该应用程序无法启动。 因此,如果我在html5应用的路由中设置为" none",则一切正常。 因此,必须缺少一些东西。 以下是xs-app.json,其中包含启动板的工作设置(无):

 {
     " welcomeFile":" webapp/index.html",
     " authenticationMethod":"路由",
     "路线":[{
         " source":" ^/httpsRedirector_api/(.*)$",
         " target":"/img/redir/$ 1",
         " destination":" coreNode_api",
         " csrfProtection":否,
         " authenticationType":" xsuaa"
     },{
         " source":" ^/sap/bc/lrep(。*)$",
         " target":"/img/sap/bc/lrep $ 1",
         " destination":" coreNode_api",
         " authenticationType":" xsuaa"
     },{
         "资源": "/img/(。*)",
         " localDir":"资源",
         " authenticationType":"无",
         "替换":{
             " pathSuffixes":[
                 " index.html"
             ],
             "服务": {
                 " sapui5_sb":{
                     " tag":" ui5"
                 }
             }
         }
     }]
 }
 

收到的导致" <"错误的文档是这个(当然,js应该不是html):

 
 <头>
 
 <脚本>
 document.cookie =" ARFRG-131ah2njwye5uqas1yex97or91 =" + encodeURIComponent(location.hash)+"; path =/"; document.cookie =" ARLOC-131ah2njwye5uqas1yex97or91 =" + encodeURIComponent(location.href.split('#')[0  ] .split(location.host)[1])+"; path =/"; document.cookie =" signature = D8t2hvy%2Bqqcw%2F%2Fc0aNoLJLeBAxA%3D; path =/"; location =" https://hana  -server.biz:39032/uaa-security/oauth/authorize?response_type=code&client_id=sb-na-669fc091-19bd-4db6-b8dd-782ab5a981d3!i2&redirect_uri=https%3A%2F%2Fhana-server.biz%3A51153%2Flogin  %2Fcallback"
 
 
 
 

在浏览器中调用该命令将导致重定向无处结束。 任何想法? 当然,我需要在xsuaa上拥有所有路线...

Gunter

screenshot-hana-xsa-li.jpg (703.2 kB)

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

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


尊敬的专家,

我正在HANA XSA项目中使用Fiori Launchpad网站,但遇到奇怪的情况,我想解决:

在每个html5模块的xs-app.json中,我在模块页面本身的路由中设置了xsuaa。 我需要这样,以便令牌可以传递到所需的模块。 如果每个html5模块是单独启动的,没问题。

现在,如果我部署启动板,这将成为问题。 单击磁贴时,启动板会收到以下消息:

因此,该应用程序无法启动。 因此,如果我在html5应用的路由中设置为" none",则一切正常。 因此,必须缺少一些东西。 以下是xs-app.json,其中包含启动板的工作设置(无):

 {
     " welcomeFile":" webapp/index.html",
     " authenticationMethod":"路由",
     "路线":[{
         " source":" ^/httpsRedirector_api/(.*)$",
         " target":"/img/redir/$ 1",
         " destination":" coreNode_api",
         " csrfProtection":否,
         " authenticationType":" xsuaa"
     },{
         " source":" ^/sap/bc/lrep(。*)$",
         " target":"/img/sap/bc/lrep $ 1",
         " destination":" coreNode_api",
         " authenticationType":" xsuaa"
     },{
         "资源": "/img/(。*)",
         " localDir":"资源",
         " authenticationType":"无",
         "替换":{
             " pathSuffixes":[
                 " index.html"
             ],
             "服务": {
                 " sapui5_sb":{
                     " tag":" ui5"
                 }
             }
         }
     }]
 }
 

收到的导致" <"错误的文档是这个(当然,js应该不是html):

 
 <头>
 
 <脚本>
 document.cookie =" ARFRG-131ah2njwye5uqas1yex97or91 =" + encodeURIComponent(location.hash)+"; path =/"; document.cookie =" ARLOC-131ah2njwye5uqas1yex97or91 =" + encodeURIComponent(location.href.split('#')[0  ] .split(location.host)[1])+"; path =/"; document.cookie =" signature = D8t2hvy%2Bqqcw%2F%2Fc0aNoLJLeBAxA%3D; path =/"; location =" https://hana  -server.biz:39032/uaa-security/oauth/authorize?response_type=code&client_id=sb-na-669fc091-19bd-4db6-b8dd-782ab5a981d3!i2&redirect_uri=https%3A%2F%2Fhana-server.biz%3A51153%2Flogin  %2Fcallback"
 
 
 
 

在浏览器中调用该命令将导致重定向无处结束。 任何想法? 当然,我需要在xsuaa上拥有所有路线...

Gunter

screenshot-hana-xsa-li.jpg (703.2 kB)
付费偷看设置
发送
2条回答
何必丶何苦呢
1楼-- · 2020-08-15 20:42

嗨,Gunter,

根据您的问题描述,听起来您好像没有在mta.yaml文件的门户网站站点配置(在require部分中)上设置forwardAuthToken = true。

-名称:应用名称
         组:目的地
         特性:
           名称:应用名称
           网址:"〜{url}"
           forwardAuthToken:true#<-设置为这个
落灬小鱼
2楼-- · 2020-08-15 20:45

嗨,Gunter,

现在您共享了mta.yaml文件,我可以看到您已经在此处对其进行了配置 :

-名称:printInvoice_ref
         组:目的地
         特性:
           名称:printInvoice_dest
           网址:"〜{url}"
           forwardAuthToken:true 

您需要删除刚刚添加的那个。

根据您现有的配置,目标名称为" printInvoice_dest",但我看不到 这个配置在您的xs-app.json(路由配置)中。 您需要在下面的最后一条路线之前输入此目的地的条目:

" source":"/(.*)",
         " localDir":"资源",
         " authenticationType":" none",

PS:仅在进行跨MTA模块连接时才需要public = true设置。 从您的设置中可以了解到,所有模块都在一个MTA项目中,因此,不需要真正使用public = true。

一周热门 更多>