0

Web アプリで使用しようとしてjQuery AJAXいます。私はいつも前に使っていasp.netたのに新しいです。私の処理方法には、すべてのリクエストを処理する 1 つの URL を用意し、 . 私の最初のアイデアは、これに通常の Web フォームを使用することでした (サイト内の他のページと同じように、通常のファイルを使用するだけです)。私はそれらのどれにも慣れていないので、そのうちの1つが優れていました(おそらく、すでにいくつかの組み込み機能があるか、リソースが軽く、応答が高速です)。aspnetPHPAJAXAJAXJSON.aspxPHPPHP

AJAXこれらの要求を処理する正しい方法は何でしょうか?

PS私のハンドラーSessionで利用できますか?AJAX

4

2 に答える 2

1

私は通常、すべての ajax リクエストを処理するためにサーバー側にファイルを 1 つだけ持っています。

ajax.aspx

<%
    if (Request.QueryString["getRateofProd"] != null) {
        string prodid = Request.QueryString["getRateofProd"];
        Response.Write (getRate(prodid));
        return;
    }
    if (Request.QueryString[" <<< similarly other variables and requests >>> "] != null)
    {
        .... // Handle another GET Request
        return;
    }
%>

URL を介して値を渡し、GETメソッドによってサーバーから文字列応答を取得できます。

すべてのクライアントのリクエストは、

$.ajax(
{
    url: 'ajax.aspx?getRateofProd=P1',
    success: function(response)
    {
        $('#<%=lblrate.ClientID%>').text(response);
    }
}

SERVERグローバル ハンドラ ファイルを使用して、ASP.NET URL 書き換えを使用してそのファイルへのすべての要求をリダイレクトします。

PHP、Apacheには、.htaccessすべてのリクエストをリダイレクトするファイルがあります。ASP.NET の URL 書き換えについてはわかりません。申し訳ありません。

リクエストが特定のファイルにリダイレクトされるrequestshandler.aspxと、次のようなAjaxリクエストであるかどうかを検出します

if(Request.Headers["X-Requested-With"] == "XMLHttpRequest")
{
    ...
}
于 2013-06-19T10:25:52.060 に答える