从 Office 加载项发送 POST AJAX 请求

Send POST AJAX request from Office Add-In

我正在尝试从我的 Outlook 加载项发送 POST Ajax 对第三方服务的请求,但无论我尝试什么,我都会收到 Error: Access is denied 和状态 0(请求永远不会到达服务器)。

假设我们 运行 IE9 或 8 落后于 outlook 我尝试了像 https://github.com/MoonScript/jQuery-ajaxTransport-XDomainRequest 这样的老派技巧。

$.ajax({
    url: endpoint,
    data: JSON.stringify({'1':'2'}),
    // headers: {'X-Requested-With': 'XMLHttpRequest'},
    contentType: 'text/plain',
    type: 'POST',
    dataType: 'json',
    error: function(xhr, status, error) {
        // error
      }
}).done(function(data) {
    // done
  });

还有什么我需要实施的吗?因为我将我的域添加到清单 AppDomain 属性。

干杯

需要执行以下操作才能向第 3 方服务发送请求...

  • 将服务 URI 添加到 AppDomain 列表(您已完成。)
  • 服务必须有 SSL 端点; “https://your.domain”必须包含在 "AppDomain" 条目中(见上文)
  • 该服务必须允许对您的应用程序(托管 Outlook App URI)域或 任何 域的 CORS 请求。这取决于服务创建者允许或禁止客户端应用程序通过 Ajax 连接。

通过观察您的代码,我注意到您正在发送 JSON 对象,但将内容类型设置为 "text/plain"。联系服务创建者以获取有关他们接受请求的数据类型的信息。通常服务允许 "application/json",但不允许纯文本。