适用于MS团队的自适应卡-图像显示在Web界面中,但不显示在桌面应用程序中

时间:2020-01-29 15:15:04

标签: microsoft-teams adaptive-cards microsoft-graph-teams

我经常遇到团队和适应卡问题。我是从Flow通过自适应卡连接器发布卡还是直接从图形API发布卡,这似乎无关紧要,卡中的图像显示在团队的Web浏览器界面中,而不显示在桌面应用程序中。

除此之外,该卡还可以正常显示,只是在桌面上没有图像渲染。难以调试,因为它可以在chrome中正常运行,如果有一种方法可以查看桌面应用程序的源代码,以查看该img url是否被前缀或替换了,或者是否位于这些行的结尾。

奇怪的是,我看过一些视频,但对其他人却有用。这是我的Graph API正文JSON中的卡代码...

{
"subject": null,
"body": {
    "contentType": "html",
    "content": "<attachment id=\"74d20c7f34aa4a7fb74e2b30004247c5\"></attachment>"
},
"attachments": [
    {
        "id": "74d20c7f34aa4a7fb74e2b30004247c5",
        "contentType": "application/vnd.microsoft.card.adaptive",
        "contentUrl": null,
        "content": "{ \"type\": \"AdaptiveCard\", \"body\": [ { 
        \"type\": \"TextBlock\",
        \"size\": \"Medium\",
        \"weight\": \"Bolder\",
        \"text\": \"Hello andy\"
    },
    {
        \"type\": \"Image\",
        \"altText\": \"\",
        \"url\": \"https://companyname.sharepoint.com/sites/TeamsDev/ImageLib/imagebname.jpg\"
    }
],
\"$schema\": \"http://adaptivecards.io/schemas/adaptive-card.json\",
\"version\": \"1.0\"
}",
        "name": null,
        "thumbnailUrl": null
    }
]
}

2 个答案:

答案 0 :(得分:1)

是的,当您尝试使用sharepoint URL在Adaptive Card中加载图像时,当您在Teams Web版本中将自适应卡加载到图像中时,它会使用图像URL中的accessToken(您可以查看是否尝试调试)。同一用户credentails,它将可以工作,因为会话有效。但是,此相同行为不适用于Teams Desktop客户端。最好将图像放入解决方案本身,然后从那里使用。

答案 1 :(得分:0)

根据评论,这是由于图像Url(它是SharePoint Url),所以在Web客户端中默默使用用户登录会话,但在桌面客户端中却没有这样做。