Asp.net mvc 4 MVC4 Mailgun交付的webhook
我在使用Mailgun交付的webhook时遇到了一个问题,可以在这里找到:,查找“交付的事件webhook” 除非我将应用程序的requestValidationMode修改为2.0,否则无法引用Request.Params[“Message Id”] 在没有requestValidationMode=2.0的情况下尝试引用此字段时,我确实会遇到潜在的不安全错误。该字段的内容为:。我还尝试声明一个模型以利用自动模型绑定。我的模型如下所示:Asp.net mvc 4 MVC4 Mailgun交付的webhook,asp.net-mvc-4,model-binding,webhooks,mailgun,Asp.net Mvc 4,Model Binding,Webhooks,Mailgun,我在使用Mailgun交付的webhook时遇到了一个问题,可以在这里找到:,查找“交付的事件webhook” 除非我将应用程序的requestValidationMode修改为2.0,否则无法引用Request.Params[“Message Id”] 在没有requestValidationMode=2.0的情况下尝试引用此字段时,我确实会遇到潜在的不安全错误。该字段的内容为:。我还尝试声明一个模型以利用自动模型绑定。我的模型如下所示: public class MailgunDeliver
public class MailgunDeliveredEvent
{
public string Id { get; set; }
public string Event { get; set; }
public string Recipient { get; set; }
public string Domain { get; set; }
[AllowHtml]
[JsonProperty(PropertyName="Message-Id")]
public object MessageId { get; set; }
public int Timestamp { get; set; }
public string Token { get; set; }
public string Signature { get; set; }
}
当我尝试引用MessageId字段时,它返回null。我试着补充一下
[Bind(Exclude="message-headers")]
因为我对那个领域不感兴趣。
在控制器中,我设置了
[ValidateInput(false)]
我似乎无法取回消息Id字段。有什么帮助吗?我似乎已经让它工作了,以防有人遇到同样的问题 我添加了一个新的模型活页夹,如下所述: 然后我改变了我的模型,如下所示:
[ModelBinder(typeof(DefaultModelBinderEx))]
public class MailgunDeliveredEvent
{
public string Id { get; set; }
public string Event { get; set; }
public string Recipient { get; set; }
public string Domain { get; set; }
[BindAlias("Message-Id")]
public string MessageId { get; set; }
public int Timestamp { get; set; }
public string Token { get; set; }
public string Signature { get; set; }
}
一切似乎都很顺利,我不需要打电话
[ValidateInput(false)]
在控制器上
希望这能帮助别人