Расширение Chrome $ .post запрос Обратного вызова не удается

0

У меня расширение Google Chrome. В моем Content.js я выполняю POST-запрос, который работает нормально, за исключением того, что я не получаю ответ обратного вызова при возврате json-данных.

Вот мой призыв

$.post(("http://localhost:4089/i3cloud.com/ilinklogemailnoimap.ashx?opensocial_owner_id=" + ownerId),
        '{"data":"' + dataString + '"}' ,
        function () {
            alert('response');
            },
        "json");

он вызывает обработчик ashx, который возвращается со следующим ответом от обработчика.

context.Response.Write("{'user_exists' : true, 'result' : 'Success'}")

Я не получаю обратный вызов...

Если ответ пуст, я получаю ответ и вызывается мой Alert.

context.Response.Write("")

Правильно ли я получил формат ответа JSON?

Я использую jquery-2.0.2

Спасибо за вашу помощь.

  • 1
    Я не уверен, может ли это вызвать проблему, но ключи JSON и строковые значения должны быть в двойных кавычках. Итак, попробуйте изменить ответ на: '{"user_exists" : true, "result" : "Success"}'
  • 0
    Спасибо за ответ. Я закончил со следующими рабочими "[{\" user_exists \ ": \" true \ ", \" result \ ": \" Success \ "}]"
Показать ещё 2 комментария
Теги:
google-chrome-extension

1 ответ

0
Лучший ответ

Мне удалось заставить это работать со следующим:

"[{\"user_exists\":\"true\",\"result\":\"Success\"}]"

Я создал json со следующим:

 JavaScriptSerializer serializer = new JavaScriptSerializer();
    responseList = new List<responseItem>();
    responseItem ri = new responseItem();
    ri.user_exists = "true";
    ri.result = "Success";
    responseList.Add(ri);
    context.Response.Write(serializer.Serialize(responseList));

Ещё вопросы

Сообщество Overcoder
Наверх
Меню