0

Nancy FrameworkとSparkビューエンジンを使用してC#コンソールアプリケーションに取り組んでおり、別のプロジェクトから何かを複製しようとしています。ただし、私はJavascriptとJSONの両方に非常に不慣れです。HTMLからC#コードでチャット関数を呼び出すには、今は次のようなものを使用します...

HTML:

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

C#コード:

    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', "");
        }
    });
});
4

2 に答える 2

1

dataSourceのような単なるhttpドメインですhttp://yourserver.com/possibly/with/a/path。コードのどこかで定義された文字列になります。

JSONリソースは、通常のHTMLページと同じようにフェッチされ、HTTPを介した通常のGETリクエストが使用されます。唯一の違いは、コンテンツがHTMLではなくJSONであるということです。たとえば、ブラウザでこれを試して、SOapiによって返されるJSONを確認してください。

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

(JSONを適切にフォーマット/ハイライトするためのブラウザープラグインがない場合は、長くて厄介な文字列のように見える可能性があります)

于 2011-09-01T11:44:46.517 に答える
0

データソースはおそらくいくつかのウェブページです

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

応答をjsonテキストとしてレンダリングすると、応答が取得され、JavaScriptオブジェクトに解析されます

于 2011-09-01T11:46:24.790 に答える