2016-08-09 11 views
2

ReCaptchaでフォームをmvcコントローラに投稿しようとしています。私は、コントローラにこのデータを受信して​​苦労していますが、私はデータを見ることができるChromeでネットワークモニタからASP.NET MVCでg-recaptcha-responseを捕まえるには?

<div class="g-recaptcha" data-sitekey="some_site_key"></div> 

enter image description here

をオフに解雇、私はviewmodelの[Required(AllowEmptyStrings = false, ErrorMessage = "Captcha required")] public string googleCaptcha { get; set; }

を使用してみました

ですが、変数googleCaptchag-recaptcha-responseにマップすることはできません。私がそうすることを許すttribute? C#は、それらの命名規則

ことはできませんので

私は明らかに変数グラム-reCAPTCHAの応答に名前を付けることはできません

答えて

1

エイリアスを指定することができますカスタムバインド属性を作成するいくつかの例がありますが、あなたはいくつかのプロパティエイリアシングされている場合、私は行くだろう方法である:一回限りのアプローチのために、しかし https://ole.michelsen.dk/blog/bind-a-model-property-to-a-different-named-query-string-field.html

が、私は単純に提出された値を読んでいましたし、手動で私のプロパティを設定します。

[HttpPost] 
public ActionResult SubmitAction() 
{ 
    var recaptchaResponse = Request["g-recaptcha-response"]; 

    var myCaptcha = new MyCaptcha(); 
    myCaptcha.googleCaptcha = recaptchaResponse 

    //.. 
} 
+0

ありがとう最後のビットは完全にそれでした – Castaldi

関連する問題