0

在测试 setInterval() 时,我的 ajax 请求加载时间很慢。它非常简单,其他具有更复杂请求的页面在不到一秒的时间内终止,而这个非常简单的页面在 10-12 之后终止。如果不使用 setInterval(),它仍然需要很长时间,并且它使用与其他页面相同的布局。

脚本示例:

    document.getElementById("test").innerHTML = "Starting";
    if(window.XMLHttpRequest)
    {
        xmlhttp = new XMLHttpRequest();
    }

    else
    {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }

    xmlhttp.onreadystatechange = function()
    {
        if(xmlhttp.readyState == 4 && xmlhttp.status == 200)
        {
            document.getElementById("test").innerHTML = xmlhttp.responseText;
        }
    }
    xmlhttp.open("GET", "/TestLive.cshtml", true);
    xmlhttp.send();

慢速服务器页面 (ASP.NET):

Response.Expires = -1;

var db = Database.Open("mydb");
string query = "select Name from Game where ID='97';";

Response.Write(db.QuerySingle(query).Name);

快速示例:

    Response.Expires = -1;

string query = "select * from Season where Season.Game = 'Football' and Season.End > '" + DateTime.Now.Add(new TimeSpan(-8,0,0)).ToString("yyyy-MM-dd") + "';";

var db = Database.Open("mydb");
var result = db.Query(query);

Response.Write("<select id=\"chosenSeason\" onchange=\"setDraftSeason()\">");
Response.Write("<option selected=\"selected\">Choose a Season</option>");
foreach (var season in result)
{
    Response.Write("<option value=\"" + season.ID + "\">");
    Response.Write(season.Name);
    Response.Write(" (" + season.Start.ToString("dd-MM-yyyy") + " - " + season.End.ToString("dd-MM-yyyy") + ")");
    Response.Write("</option\">");
}
Response.Write("</select>");

编辑:这似乎与使用布局页面访问脚本有关。不过,所有快速页面都使用相同的设置。

4

0 回答 0