0

ユーザーが初めてログインするときにユーザー認証を実行しようとしています。ユーザーがまだ確認されていない場合はuserid、コードからコールバック メソッドを送信し、コールバックで別のページにリダイレクトします。

(window.location.href = "/verifyuser?id=" + response.userId)

しかし、私はこのようにしたくありません。代わりに、値を使用して URL への ajax 呼び出しを実行したいと考えています。userId が URL に表示されないようにします。使ってみた

$.ajax({

     type:"POST"        
     url:"/verifyuser",
     data:{id:response.userId},
     async:false
});

しかし、うまくいきませんでした。私のサーバー側のコードは以下です(私はmvc 4を使用しています)

    [HttpGet]
    public ActionResult VerifyUser(string id)
    {           
        ViewBag.Id = id;
        return View("~/Views/User/VerifyUser.cshtml");
    }

私のjsコードは以下の通りです:

var postObj = {

            url: "Home/Login",
            data: {},
            callback: function (status, response) {
                if (response.status === 400) {
                    var errors = response.errors;
                    var serverValidate = new PS.Validate(userObj);
                    var isvalid = serverValidate.showErrors(errors);
                }
                else {

                    if (response.userId !== null && response.userId !== undefined) {

                        window.location.href = "/verifyuser?id=" + response.userId;
                    }
                    else {
                        window.location.href = "/user-dashboard";
                    }
                }
            }
        };
me.fm.post(postObj);

Ajaxの有無にかかわらずこれを行う方法はありますか? ありがとう。

4

2 に答える 2