отправка данных поста из скриптов google в Mvc 4

У меня есть форма google, которая собирает информацию о пользователях. В качестве подтверждения того, что данные вводятся в форму, у меня есть скрипт Google, запускаемый в событии отправки формы, который отправляет копию ответов пользователю, отправившему данные.

Недавно я создал приложение mvc 4 для анализа данных, а также для отправки электронных писем пользователям. Я также хотел теперь включить мое приложение mvc для отправки электронного письма с подтверждением моим пользователям, но я не уверен, как это сделать.

Я просмотрел UrlFetchApp, и у меня есть подозрение, что у меня есть следующая логика в моем скрипте Google:

function sendHttpPost() {
   var payload = {
    "fieldOne" : "value for field one",
    "fieldTwo" : "value for field two",
   };

   var data = {
    "method" : "post",
    "payload" : payload
   };

   var myWebsite = "http://example.com/GoogleForm/SendConfirmationEmail"

   UrlFetchApp.fetch(myWebsite, data);
}

Что я не уверен, так это то, как я могу получить доступ к этим данным с помощью моего приложения Mvc? В моем контроллере GoogleForm мне просто создать метод SendConfirmationEmail? Каким будет мой параметр?


person theStig    schedule 21.12.2013    source источник


Ответы (1)


Ваш контроллер mvc должен выглядеть так:

public class GoogleFormController : Controller
{

    [HttpPost]
    public ActionResult SendConfirmationEmail(FormData formData)
    {
        // Send email. See http://aboutcode.net/postal/

        // I'm assuming you're returning json.
        return Json(formData);
    }

    public class FormData
    {
        public string fieldOne { get; set; }
        public string fieldTwo { get; set; }
    }

}
person maxbeaudoin    schedule 21.12.2013
comment
Это не работает. Метод никогда не вызывается, хотя я не уверен, как это проверить в реальной версии. - person theStig; 22.12.2013
comment
@theStig, используя Chrome, найдите почтовый HTTP-запрос (F12 > Сеть). Какой код статуса ответа? Отправлен ли какой-либо http-запрос? - person maxbeaudoin; 22.12.2013
comment
Догадаться. Данные не отправлялись, так как URL-адрес назначения требовал аутентификации. - person theStig; 22.12.2013