G+

To allow GET requests, set JsonRequestBehavior to AllowGet

Программирование Asp.net
Предыдущий Следующий

В программе реализован контролер, у которого есть action, он возращает JsonResult.  (Например по RegionID нужно вернуть список городов для select)

public JsonResult ListCities(int? regionId)
        {
            if (!regionId.HasValue)
                return new JsonResult
                {
                    Data = new SelectList(new List<TAddress>()),
                };
            var data = dm.Address.GetListCity(regionId.Value, AccountInfo.LanguageID);
            data.Insert(0, new TAddress() { ID = 0, Name = "" });

            return return new JsonResult
                {
                    Data = new SelectList(
                     data,
                    "ID",
                    "Name"),
                };
        }

Приложение установлено на нескольких машинах (код аналогичен один в один). На одной машине все пашет. Но на другой вылетает ошибка: "This request has been blocked because sensitive information could be disclosed to third party web sites when this is used in a GET request. To allow GET requests, set JsonRequestBehavior to AllowGet."

Что бы избавится от ошибки пришлось переделать код(причина возникновения ошибка осталась неизветсна)

public JsonResult ListCities(int? regionId)
        {
            if (!regionId.HasValue)
                return Json(new SelectList(new List<TAddress>()), JsonRequestBehavior.AllowGet);
               
            var data = dm.Address.GetListCity(regionId.Value, AccountInfo.LanguageID);
            data.Insert(0, new TAddress() { ID = 0, Name = "" });

            return Json(new SelectList(
                     data,
                    "ID",
                    "Name"), JsonRequestBehavior.AllowGet);
        }

Комментарий:
  • В 22.05.2012 12:41:17, Аноним

    причина возникновения ошибка осталась неизветсна? ПИЧИНА НЕИЗВЕСТНА?))))

Самостоятельный отпуск Опыт заказа вывоза мусора в Киеве