3

我正在开发 SharePoint 托管应用程序,并尝试使用客户端代码发送电子邮件。我是否必须使用工作流或事件接收器来执行此操作?似乎找不到任何关于此的信息。

有任何想法吗?

4

3 回答 3

2

您可以将 Visual Studio 中的工作流添加到您的项目中。将电子邮件从工具箱拖放到您的工作流程中,设置参数,您的工作流程现在已配置为发送电子邮件。

从客户端,您需要包含sp.workflowservices.js. 然后您需要做的就是检索工作流实例并启动它。

于 2013-02-06T06:22:56.293 回答
2

您可以使用这样的函数从 SharePoint 托管的应用程序中使用 JavaScript 发送电子邮件。

function sendEmail(from, to, body, subject) {
    var appweburl = decodeURIComponent(getQueryStringParameter('SPAppWebUrl'));
    var urlTemplate = appweburl + "/_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] },
                //'CC': { 'results': [cc]}, //Maybe you want to include a CC address?
                'Body': body,
                'Subject': subject
            }
        }
      ),
        headers: {
            "Accept": "application/json;odata=verbose",
            "content-type": "application/json;odata=verbose",
            "X-RequestDigest": $("#__REQUESTDIGEST").val()
        },
        success: function (data) {
           alert("An email was sent.");
        },
        error: function (args) {
           alert("We had a problem and an email was not sent.");
        }
    });
}
于 2014-07-18T20:31:35.317 回答
1

您将无法在客户端发送实际的电子邮件,但您可以形成电子邮件并将其发送到将发送电子邮件的 ASP.Net 页面。

有关示例,请参阅如何从 JavaScript 发送电子邮件。

于 2013-02-04T23:49:07.367 回答