Я пытаюсь получить результат опроса в моем приложении WCF. Я создал webhook и вижу, что запрос HEAD немедленно отправляется. Однако, когда я заполняю опрос, я не получаю запрос POST. Я связался с их поддержкой, и они сказали, что не могут мне помочь с WCF. Если это невозможно с WCF, может кто-нибудь дать мне пример того, как это сделать другим способом. NET? Вот заголовок (игнорируйте опечатки)
[OperationContract]
[WebInvoke(UriTemplate = "/PostSurveryMonkeyResult", Method = System.Net.WebRequestMethods.Http.Post, BodyStyle = WebMessageBodyStyle.Bare, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
void PostSurveryMonkeyResult(SurveyMonkeyObject result);
[OperationContract]
[WebInvoke(UriTemplate = "/PostSurveryMonkeyResult", Method = System.Net.WebRequestMethods.Http.Head, BodyStyle = WebMessageBodyStyle.Bare, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
void PostSurveryMonkeyResult_Head();
Вот модель
public class SurveyMonkeyObject
{
public string name { get; set; }
public string filter_type { get; set; }
public string filter_id { get; set; }
public string event_type { get; set; }
public string event_id { get; set; }
public string object_type { get; set; }
public string object_id { get; set; }
public string event_datetime { get; set; }
public Resources resources { get; set; }
public class Resources
{
public string respondent_id { get; set; }
public string recipient_id { get; set; }
public string collector_id { get; set; }
public string survey_id { get; set; }
public string user_id { get; set; }
}
}
Вот код
public void PostSurveryMonkeyResult(SurveyMonkeyObject result)
{
Logger.Info("PostSurveryMonkeyResult()");
try
{
var resultString = JsonConvert.SerializeObject(result);
Logger.Info("PostSurveryMonkeyResult is: " + resultString);
}
catch (Exception ex)
{
Logger.Error("SurveryMonkey Result: " + ex);
}
}
public void PostSurveryMonkeyResult_Head()
{
Logger.Info("PostSurveryMonkeyResult_Head()");
}