我想将 Outlook Web App 嵌入我的网站。直接在我的网站页面上显示日历、邮件、人员屏幕。我试图通过 iFrame 来做,但这是被禁止的。有可能吗?
问问题
14192 次
2 回答
2
与普遍看法相反,这是可以实现的。
我的博文( http://blog.degree.no/2013/06/owa-in-iframe-yes-its-possible/ )中有更多详细信息,但这是所需的代码。如果您在“轻量模式”(标志 = 1)下运行它,则问题较少并且它可以跨域运行,但是如果您在同一个域中运行它(例如,在 yourdomain.com 上运行的网站并且您的交换服务器在邮件上运行。 yourdomain.com)它也适用于“完整模式”(标志 = 0):
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<script>
function LoginToOWA(server, domain, username, password) {
var url = "https://" + server + "/owa/auth/owaauth.dll";
// flags 0 = full version, flags 1 = light weight mode
var p = { destination: 'https://' + server + '/exchange', flags: '1', forcedownlevel: '0', trusted: '0', isutf8: '1', username: domain + '\\' + username, password: password };
var myForm = document.createElement("form");
myForm.method = "post";
myForm.action = url;
for (var k in p) {
var myInput = document.createElement("input");
myInput.setAttribute("name", k);
myInput.setAttribute("value", p[k]);
myForm.appendChild(myInput);
}
document.body.appendChild(myForm);
myForm.submit();
document.body.removeChild(myForm);
}
</script>
<body onload="javascript:LoginToOWA('mail.someserver.com','yourdomain','yourusername@someserver.com','yourpassword');">
<img src="../../gfx/loadingAnim.gif" /> Please wait while your inbox is loading...
</body>
</html>
于 2013-07-14T23:57:42.757 回答
0
您使用的是哪个版本的 OWA?我以前在 OWA-2003 上为我们公司的 Intranet 做过这个。只需将您的 iframe 指向 webpart url,如下所示:
http://server/exchange/user/inbox/?cmd=contents&view=Two-Line%20View&theme=4
这仅在您的主网站使用 Windows 集成身份验证时才有效。您必须使用 ASP.Net 服务器端代码将“用户”替换为登录的用户名。
在 MS 知识库文章中搜索 Webpart 参数。您可以显示收件箱、日历等。
于 2013-07-04T15:29:17.340 回答