asp.net mvc jQuery $ .post работает, но $ .get не работает - PullRequest
2 голосов
/ 23 апреля 2010

Почему POST работает, а не GET? Я не использую [AcceptVerbs(HttpVerbs.Post)]. Я звоню это:

public ActionResult GetTest(string key)
        {
            var test = new { HelpTest = key };
            return Json(test);
        }

И это работает, когда я делаю это:

$.post("/Home/GetTest", { key: options.key },
                        function(helpTest) {
                            alert(helpTest.HelpTest);
                        });  

Но не это:

$.get("/Home/GetTest", { key: options.key },
                            function(helpTest) {
                                alert(helpTest.HelpTest);
                            });  

С чего бы это? Использование GET возвращает XMLHttpRequest.status 500. Что меня смущает?

1 Ответ

3 голосов
/ 23 апреля 2010

потому что return json не возвращает json для получения запросов, это небезопасно, и вам следует избегать его, но если вы действительно хотите его использовать, используйте перегрузку json, установите свойство allowget, тогда оно будет работать

return Json(data, JsonRequestBehavior.AllowGet);  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...