Что такое источник данных JSON? - PullRequest
0 голосов
/ 01 сентября 2011

Я работаю над консольным приложением C #, используя Nancy Framework и механизм представления Spark, и пытаюсь воспроизвести что-то из другого проекта.Тем не менее, я очень неопытен как с Javascript, так и с JSON.Чтобы вызвать функцию чата в моем коде C # из моего HTML, сейчас я просто использую что-то вроде следующего ...

HTML:

http://localhost:1234/sendchat?message="this is a test message"

C # Code:

    Get["/sendchat"] = x =>
    {
        string message = Request.Query.message;
        string message2 = message.Replace("\"", "");
        Console.WriteLine(message2);

        return View["console.spark"];
    };

Проблема в том, что это приводит к перезагрузке страницы.В проекте, к которому я обращаюсь для справки, они используют Javascript / JSON для вызова функций одного типа без перезагрузки страницы.Я понимаю все это, за исключением строки JSON, поскольку я не понимаю, что такое источник данных ...

$(document).ready(function () {
    $("#typechat").keypress(function (event) {
        if (event.keyCode == '13') {
            event.preventDefault();
            message = escape($("#typechat").attr('value'));
            $.getJSON(dataSource + "?req=sendchat&message=" + message);
            $("#typechat").attr('value', "");
        }
    });
});

Ответы [ 2 ]

1 голос
/ 01 сентября 2011

dataSource - это просто http-домен, подобный http://yourserver.com/possibly/with/a/path.Это будет строка, определенная где-то в коде.

Ресурсы JSON извлекаются так же, как обычные HTML-страницы, с обычным GET-запросом по HTTP.Единственная разница заключается в том, что контент - это JSON, а не HTML.Попробуйте это в вашем браузере, например, чтобы увидеть JSON, возвращаемый API-интерфейсом SO:

http://api.stackoverflow.com/1.1/users/183579

(Если у вас нет подключаемого модуля браузера для удобного форматирования / выделения JSON, он можетпросто выглядеть как длинная грязная нить)

0 голосов
/ 01 сентября 2011

Источником данных, вероятно, является какая-то веб-страница

dataSource = "http://somepage.com/someaction";

, который отображает ответ в виде текста в формате json, ответ захватывается и затем анализируется для объекта javascript

...