gpt4 book ai didi

jquery - 从 Outlook 邮件加载项调用 Web 服务

转载 作者:行者123 更新时间:2023-12-01 05:37:44 27 4
gpt4 key购买 nike

我对 Outlook 邮件加载项遇到的这一问题有点困惑。我正在使用 Office 365 开发人员帐户,其中邮件加载项将显示(在线,在浏览器中): enter image description here

我想在单击按钮时调用 REST Web 服务。

首先,让我发布我的 HTML:

<html>
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<title></title>
<script src="../../Scripts/jquery-1.9.1.js" type="text/javascript"></script>

<link href="../../Content/Office.css" rel="stylesheet" type="text/css" />
<script src="https://appsforoffice.microsoft.com/lib/1.1/hosted/office.js" type="text/javascript"></script>

<!-- To enable offline debugging using a local reference to Office.js, use: -->
<!-- <script src="../../Scripts/Office/MicrosoftAjax.js" type="text/javascript"></script> -->
<!-- <script src="../../Scripts/Office/1.1/office.js" type="text/javascript"></script> -->

<link href="../App.css" rel="stylesheet" type="text/css" />
<script src="../App.js" type="text/javascript"></script>

<link href="Home.css" rel="stylesheet" type="text/css" />
<script src="Home.js" type="text/javascript"></script>
</head>
<body>
<!--Header and Footer tags not supported-->
<div id="content-main">
Click this button to test the create method
<br />
<label id="lblMessage">Message will appear here</label>
<button id="btnTest" type="button">Perform Test Create</button>

<!--<iframe id="my_api_iframe"></iframe>-->
</div>
</body>
</html>

这是我们在第一个屏幕截图中看到的 HTML。

Office.initialize JS 代码,给那些想看的人:

Office.initialize = function (reason) {
//_mailbox = Office.context.mailbox;
////Request identity token from Exchange Server.
//_mailbox.getUserIdentityTokenAsync(getTokenCallback);

$(document).ready(function () {
app.initialize();
//SET Variables
loggedInUserDisplayName = Office.context.mailbox.userProfile.displayName;
loggedInUserEmailAddress = Office.context.mailbox.userProfile.emailAddress;
var conversationID = Office.context.mailbox.item.conversationId;
var internetMessageID = Office.context.mailbox.item.internetMessageId;
var itemID = Office.context.mailbox.item.itemId;

//$('#lblMessage').text("ConversationID:" + convoID + " InternetMessageID:" + intMessID + " ItemID:" + itemID);

$("#btnTest").click(function () {
GetList();
//GetList2();
});
});
};

我尝试了不同的方法来做到这一点。单击按钮时,它会调用指定的函数,以下是我尝试过的几种方法:

function GetList() {
jQuery.support.cors = true;
$.ajax({
type: "GET",
url: [URL to WebMethod],
success: function (data, textStatus) {
$('#lblMessage').text("Success");
},
error: function (xhr, textStatus, errorThrown) {
$('#lblMessage').text("Error: " + errorThrown + " StatusCode: " + textStatus + " XHR: " + xhr.readyState);
}
});
}

但是当单击按钮并调用此函数时,这是我得到的错误: enter image description here

我尝试的第二个功能:

function GetList2() {
$.ajax({
type: "GET",
url: [URL to WebMethod], xhr: function () {
return new ($('#my_api_iframe')[0].contentWindow.XMLHttpRequest)();
}, success: function (html) {
// format and output result
$('#lblMessage').text(html);
}, error: function (xhr, textStatus, errorThrown) {
// format and output result
$('#lblMessage').text(errorThrown);
}
});
}

但是没有用。这是我得到的错误: enter image description here

我尝试的最后一个功能:

function getTokenCallback(asyncResult) {
var token = asyncResult.value;

// Create a web service call and pass the token as part of the call.
_xhr = new XMLHttpRequest();
_xhr.open("GET", [URL to WebService]);
_xhr.setRequestHeader("Content-Type", "application/xml; charset=utf-8");
_xhr.onreadystatechange = readyStateChange;

var request = new Object();
request.token = token;
request.
request.phoneNumbers = _om.get_item().getEntities().phoneNumbers;

_xhr.send(JSON.stringify(request));
}

但是在执行 _xhr.open() 时,我遇到了与以前相同的“访问被拒绝”错误。

任何人都可以帮助我朝着正确的方向调用这些 REST 服务吗?它们都以 XML 格式返回数据,这就是我使用“application/xml”ContentType 的原因。

任何帮助将不胜感激,即使它的方式与我想要做的完全不同:)。

最佳答案

您的 iframe HTML 元素已被注释掉。尝试取消注释。至少这就是 GetList2() 失败的原因。

所以改变

<!--<iframe id="my_api_iframe"></iframe>-->

<iframe id="my_api_iframe"></iframe>

关于jquery - 从 Outlook 邮件加载项调用 Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32862027/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com