不使用VS工作流在SharePoint Hosted App中发送电子邮件

时间:2014-10-28 11:35:13

标签: sharepoint-2013

我创建了一个SharePoint Hosted应用程序,它使用visual studio工作流程在同一个域中发送电子邮件。

由于我正在将SP2010中的自定义aspx表单迁移到SharePoint Online,因此每个表单都重新开发为SP托管应用程序,并且我不希望每次都包含一个工作流程来发送电子邮件。

在SP Hosted应用中处理电子邮件还有其他解决方法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用javascript REST API从托管应用发送电子邮件。 请参阅以下代码:

var urlTemplate = SPAppWebUrl + "/_api/SP.Utilities.Utility.SendEmail";
$.ajax({
    contentType: 'application/json',
    url: urlTemplate,
    type: "POST",
    data: JSON.stringify({
        'properties': {
            '__metadata': { 'type': 'SP.Utilities.EmailProperties' },
            'From': from,
            'To': { 'results': [to] },
            'Body': emailBody,
            'Subject': subject
        }
    }
  ),
    headers: {
        "Accept": "application/json;odata=verbose",
        "content-type": "application/json;odata=verbose",
        "X-RequestDigest": $("#__REQUESTDIGEST").val()
    },
    success: function (data) {
        //console.log('success')
        alert('email send successfull..');
    },
    error: function (err) {
        //console.log(JSON.stringify(err));
        alert(JSON.stringify(err));
    }
});