JSon для Asp.Net внутри веб-работника.Не могу найти метод внутри контроллера - PullRequest
0 голосов
/ 20 октября 2011

Я отправляю JSon на мой контроллер Asp.Net MVC 3, который находится внутри Web Worker (используя jquery-hive). В PostMessage я могу зафиксировать ошибку Asp.Net, сообщающую, что он находит контроллер, но не имеет метода действия X.

см. Код: Здесь я называю работника на main.js:

 var worker = new Worker('models/worker.js');

worker.onmessage = function (event) {
    var a = event;
};
worker.postMessage(null);

Код в worker.js:

  importScripts('hive.pollen.js');  $(function (msg) {
    $.ajax.get({
        url: '/Search/Method1/',
        dataType: 'POST',
        data: null,
        success: function (jsonObj) {
            $.send( jsonObj);
                }
    });
});

Контроллер имеет этот метод:

[HttpPost]
    public JsonResult Method1(string test)
    {
        return Json("worked! " + test);
    }

Сообщение, которое работник возвращает мне, это ошибка asp.net.

[HttpException]: метод открытого действия "Method1" не найден в контроллере SearchController

Ответы [ 2 ]

1 голос
/ 20 октября 2011

Похоже, вы отправляете запрос GET (метод $ .ajax.get).
Попробуйте использовать $ .post ()

в jquery
0 голосов
/ 30 августа 2012

У вас ошибка на: dataType: 'POST'.

В вашем случае вы должны поставить dataType: 'json', чтобы отправить данные в правильном формате

...