Õâ¸öÀàÕª×Ô£º ASP.NET AjaxµäÐÍÓ¦Óà һÊé
xmlhttp.js
function $() {
var elements = new Array();
for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
if (typeof element == 'string')
element = document.getElementById(element);
if (arguments.length == 1)
return element;
elements.push(element);
}
return elements;
}
//------------------------------------------------------------------------------------------
//·â×°XMLHTTPµÄRequestÀàµÄ´úÂë
var Request = new Object();
//¶¨ÒåÒ»¸öXMLHTTPµÄÊý×é
Request.reqList = [];
//´´½¨Ò»¸öXMLHTTP¶ÔÏ󣬼æÈݲ»Í¬µÄä¯ÀÀÆ÷
function getAjax()
{
var ajax=false;
try
{
ajax = new ActiveXObject("Msxml2.XMLHTTP");
}
catch ......
Dynatrace AJAX EditionÊÇÎÒÈÏΪ×îΪǿ´óµÄWeb Performance Profile¹¤¾ß¡£·Ï»°²»ËµÁË£¬Ö±½ÓÉÏͼ½éÉÜÆäÖ÷Òª¹¦ÄÜ¡£
ÏÈÓÃIE·ÃÎÊÄãÐèÒªprofileµÄÍøÕ¾£¬ÀýÈçgoogle£¬¿ÉÒÔµã»÷dynatrace¹¤¾ßÀ¸À´Æô¶¯¡£Õâʱºòdynatrace¾Í¿ªÊ¼¼Ç¼Õâ¸öÍøÕ¾´¥·¢µÄÒ»ÇÐʼþ¡£
ÎÒ¼òµ¥²âÊÔһϣ¬µã»÷google map£¬²¢ÇÒËÑË÷shanghai£¬È»ºó»ØÈ¥¿´¿´dynatrace¿ÉÒÔ°ïÎÒÃÇ·ÖÎö³öʲô¡£
Õâ¸öÊÇsummary£¬Ö÷Òª°üÀ¨¼¸´óÊý¾Ý£º
1£©url£ºËùÓÐä¯ÀÀ¹ýµÄURL·¾¶£¬Ã¿Ñ¡ÔñÆäÖÐÒ»¸öurl£¬ÏÂÃæ¾ßÌåµÄÄÚÈÝÒ²»á¸ù¾Ýµ±Ç°Ñ¡ÔñµÄurl±ä»¯
2£©resources & network£ºËùÓÐ×ÊÔ´ÎļþµÄÊýÄ¿£¬¶àÉÙÊÇͨ¹ýÍøÂç´«Ê䣬¶àÉÙÊÇÀ´×Ô»º´æ¡£NetworkÀïÃæ»á˵Ã÷»¨·ÑÔÚÍøÂçÉϵÄʱ¼ä·Ö²¼£ºDNS½âÎö£¬½¨Á¢Á¬½Ó£¬·þÎñÆ÷ÏìÓ¦£¬ÍøÂç´«Êä
3£©JavaScript: ʼþ´¥·¢»¨·ÑµÄʱ¼ä·Ö²¼£¬Èçonload£¬onclickµÈµÈ¡£¸÷¸öjsÎļþÖ´ÐÐʱ¼ä·Ö²¼¡£
4£©Timeline£ºÓиöʱ¼äÖᣬ¿ÉÒԷdz£ÇåÎúµÄ¿´µ½CPU£¬ÍøÂ磬JavaScriptÖ´ÐУ¬Ò³ÃæÏÔʾËù»¨·ÑµÄʱ¼ä¡£
ÏÂÃæTimeline£º
¿ÉÒÔºÜÇåÎúµÄ¿´µ½Ê±¼ä¾ßÌåµÄ»¨·Ñ·Ö²¼£¬ÒÔ¼°Ê²Ã´Ê±¼ä´¥·¢ÁËʲôʼþ¡£Ë«»÷ʱ¼äÖáÉÏÃæµÄÈκξßÌåʱ¼ä¿é£¬¶¼¿ÉÒÔ¿´µ½¾ßÌåµÄÄÚÈÝ£¬ÎÒµã»÷Ò»¶ÎJavaScriptÖ´ÐÐʱ¼ä¶ÎÀ´×÷ΪÀý×Ó¡£ÏÂÃæ¾ÍÊÇË«»÷ºó¿´µ½µ ......
B/SΪºÎÄÑÓÚÌṩºÃµÄÓû§½»»¥ÌåÑé?
×î´óÎÊÌâÓм¸¸ö£º
¡¡¡¡(1)ÎÞ״̬µÄHTTPÐÒé
¡¡¡¡WINDOWS´°Ìå¼äÄܹ»Í¨¹ýÄÚ´æÖ±½Ó½»»»ÐÅÏ¢£¬µ«×÷ΪB/S¼Ü¹¹Í¨Ñ¶»ù´¡ÐÒéµÄHTTPÊÇÎÞ״̬µÄ¡£
¡¡¡¡Èç¹û½«ä¯ÀÀÆ÷¿´³ÉÊÇ¿ÍÈË£¬Web·þÎñÆ÷¿´³ÉÊÇÂùݣ¬ÔÚHTTPÐÒéµÄ¹ÜÀí֮ϣ¬»á³öÏÖÕâÖÖÇé¿ö£º²»¹Üij¿ÍÈËÀ´·Ã¶àÉٴΣ¬Web·þÎñÆ÷¶¼½«ÆäÊÓΪµÚÒ»´ÎµÄ·Ã¿Í¡£ÕâÑùÒ»À´£¬¿ÍÈËÿ´Î¶¼µÃ´øÆëÉí·ÝÖ¤¼þ¹©Âùݹ¤×÷ÈËÔ±“ÑéÃ÷ÕýÉ픡£
¡¡¡¡HTTPÐÒéµÄÎÞ״̬£¬µ¼ÖÂWeb·þÎñÆ÷µÄ“ÁùÇײ»ÈÏ”£¬Õâ¹ÌÈ»ÄÜÌí¼ÓWeb·þÎñÆ÷µÄÍÌÍÂÁ¿£¬È´¸øÓ¦ÓÃϵͳµÄ¿ª·¢´øÀ´ÁËÂé·³¡£ÒòΪӦÓÃϵͳÖг£³£ÓÐÐí¶àÒµÎñ´¦ÀíÁ÷³Ì£¬ÌìÉú¾ÍÊÇÐÅÏ¢Á÷תµÄ£¬¼´ÔʼÊý¾Ý´ÓÒ»¶Ë½øÈ¥£¬´ÓÁíÒ»¶Ë³öÀ´Ê±Ó¦¸ÃÒѾ¹ýijЩ´¦Àí£¬Ôõ¿ÉÏëÏóÕû¸öÒµÎñÁ÷³ÌÖеÄÐÅÏ¢»áÁ÷ʧ£¿ÓÚÊÇ£¬ÔÚHTTP¸÷ÇëÇó¼ä¹²ÏíÐÅÏ¢¾Í³ÉÁ˼þÂ鷳ʣ¬Õâ¾ÍÊÇHTTPÇëÇóµÄ“״̬±£³Ö”ÎÊÌ⡣ÿ¸öB/Sϵͳ¶¼±ØÐë½â¾öÕâ¸öÎÊÌ⡣΢ÈíÏëÁËһЩ“ÍáÕД£¬±ÈÈç³ä·ÖÀûÓÃHTMLÍøÒ³µÄÖÐÒþ²ØÓò£¬ÔÙÔÚWeb·þÎñÆ÷ÉÏ×öЩÊֽţ¬ÓÚÊÇASP.NETÓµÓÐÁËÒ»Ì×ÔÚ¸÷¸öHTTPÇëÇóÖ®¼äά³Ö״̬µÄ¼¼Êõ£ºSESSION£¬COOKIE£¬VIEWSTATE£¬PROFILE£¬APPLICATION¡£
¡¡¡¡È»¶øÎÊÌⲢûÓÐÍêÈ«½â ......
B/SΪºÎÄÑÓÚÌṩºÃµÄÓû§½»»¥ÌåÑé?
×î´óÎÊÌâÓм¸¸ö£º
¡¡¡¡(1)ÎÞ״̬µÄHTTPÐÒé
¡¡¡¡WINDOWS´°Ìå¼äÄܹ»Í¨¹ýÄÚ´æÖ±½Ó½»»»ÐÅÏ¢£¬µ«×÷ΪB/S¼Ü¹¹Í¨Ñ¶»ù´¡ÐÒéµÄHTTPÊÇÎÞ״̬µÄ¡£
¡¡¡¡Èç¹û½«ä¯ÀÀÆ÷¿´³ÉÊÇ¿ÍÈË£¬Web·þÎñÆ÷¿´³ÉÊÇÂùݣ¬ÔÚHTTPÐÒéµÄ¹ÜÀí֮ϣ¬»á³öÏÖÕâÖÖÇé¿ö£º²»¹Üij¿ÍÈËÀ´·Ã¶àÉٴΣ¬Web·þÎñÆ÷¶¼½«ÆäÊÓΪµÚÒ»´ÎµÄ·Ã¿Í¡£ÕâÑùÒ»À´£¬¿ÍÈËÿ´Î¶¼µÃ´øÆëÉí·ÝÖ¤¼þ¹©Âùݹ¤×÷ÈËÔ±“ÑéÃ÷ÕýÉ픡£
¡¡¡¡HTTPÐÒéµÄÎÞ״̬£¬µ¼ÖÂWeb·þÎñÆ÷µÄ“ÁùÇײ»ÈÏ”£¬Õâ¹ÌÈ»ÄÜÌí¼ÓWeb·þÎñÆ÷µÄÍÌÍÂÁ¿£¬È´¸øÓ¦ÓÃϵͳµÄ¿ª·¢´øÀ´ÁËÂé·³¡£ÒòΪӦÓÃϵͳÖг£³£ÓÐÐí¶àÒµÎñ´¦ÀíÁ÷³Ì£¬ÌìÉú¾ÍÊÇÐÅÏ¢Á÷תµÄ£¬¼´ÔʼÊý¾Ý´ÓÒ»¶Ë½øÈ¥£¬´ÓÁíÒ»¶Ë³öÀ´Ê±Ó¦¸ÃÒѾ¹ýijЩ´¦Àí£¬Ôõ¿ÉÏëÏóÕû¸öÒµÎñÁ÷³ÌÖеÄÐÅÏ¢»áÁ÷ʧ£¿ÓÚÊÇ£¬ÔÚHTTP¸÷ÇëÇó¼ä¹²ÏíÐÅÏ¢¾Í³ÉÁ˼þÂ鷳ʣ¬Õâ¾ÍÊÇHTTPÇëÇóµÄ“״̬±£³Ö”ÎÊÌ⡣ÿ¸öB/Sϵͳ¶¼±ØÐë½â¾öÕâ¸öÎÊÌ⡣΢ÈíÏëÁËһЩ“ÍáÕД£¬±ÈÈç³ä·ÖÀûÓÃHTMLÍøÒ³µÄÖÐÒþ²ØÓò£¬ÔÙÔÚWeb·þÎñÆ÷ÉÏ×öЩÊֽţ¬ÓÚÊÇASP.NETÓµÓÐÁËÒ»Ì×ÔÚ¸÷¸öHTTPÇëÇóÖ®¼äά³Ö״̬µÄ¼¼Êõ£ºSESSION£¬COOKIE£¬VIEWSTATE£¬PROFILE£¬APPLICATION¡£
¡¡¡¡È»¶øÎÊÌⲢûÓÐÍêÈ«½â ......
ÈçºÎÔÚ¿Í»§¶ËÖ±½Óµ÷ÓÃWebServiceÖеķ½·¨£¿
ÕâÀï½áºÏ¾Ñé×Ô¼ºÐ´Ò»Ð´
1.Ê×ÏÈн¨Ò»¸ö ASP.NET AJAX-Enabled Web Site,ÕâÑùϵͳΪÎÒÃÇ×Ô¶¯ÅäÖúÃÁË»·¾³£¬ÕâÖ÷ÒªÌåÏÖÔÚWeb.configÕâ¸öÎļþÉÏ£¬Èç¹ûÒÑÓÐÍøÕ¾²»ÊÇASP.NET AJAX-Enabled Web SiteÒ²¿ÉÒÔ¶ÔÕÕÐÞ¸ÄÏÂWeb.config£¬Ò²¿ÉÒÔ´ïµ½ÏàͬµÄЧ¹û¡£
2.н¨Ò»¸öweb·þÎñ£¬WebService.asmx£¬ÔÚWebService.csÐèÒªÌí¼ÓSystem.Web.Script.Services;Õâ¸öÃüÃû¿Õ¼ä£º
using System.Web.Script.Services;
È»ºó¸øWebService ÀàÌí¼Ó[ScriptService]ÊôÐÔÕâÀïÏÈ˵²½Ö裬ºóÃæ˵ÔÀí£¬È»ºó¸øÎÒÃÇÐèÒªµ÷Óõķ½·¨¼ÓÉÏ
[WebMethod]ÊôÐÔ
3.н¨Ò»¸öJScriptÎļþ£¬JScript.js£¬ÀïÃæÓÃÀ´ÏìÓ¦½çÃæʼþ´¦Àí»Øµ÷·½·¨·µ»ØµÄÊý¾Ý
4.н¨Ò»¸öÒ³ÃæDefault.aspx,Èç¹ûÊÇASP.NET AJAX-Enabled Web SiteÒ³ÃæÉÏ»á×Ô¶¯Ìí¼ÓScriptManager¿Ø¼þ£¬Èç¹û²»ÊÇÖ»ÒªÊÖ¹¤ÍÏÉÏÈ¥Ò»¸ö£¬È»ºó¸øScriptManagerÌí¼ÓScript½Úµã£¬Õâ¸ö½ÚµãÓÃÀ´Ö¸¶¨ÒªÊ¹ÓõÄjsÎļþ
<Scripts><asp:ScriptReference Path="~/JScript.js" /></Scripts>
ÔÙ¸øScriptManagerÌí¼ÓServices½Úµã£¬Õâ¸ö½ÚµãÓÃÀ´Ö¸¶¨ÒªÊ¹ÓõÄWebService
<Services><asp:ServiceReference ......
ÈçºÎÔÚ¿Í»§¶ËÖ±½Óµ÷ÓÃWebServiceÖеķ½·¨£¿
ÕâÀï½áºÏ¾Ñé×Ô¼ºÐ´Ò»Ð´
1.Ê×ÏÈн¨Ò»¸ö ASP.NET AJAX-Enabled Web Site,ÕâÑùϵͳΪÎÒÃÇ×Ô¶¯ÅäÖúÃÁË»·¾³£¬ÕâÖ÷ÒªÌåÏÖÔÚWeb.configÕâ¸öÎļþÉÏ£¬Èç¹ûÒÑÓÐÍøÕ¾²»ÊÇASP.NET AJAX-Enabled Web SiteÒ²¿ÉÒÔ¶ÔÕÕÐÞ¸ÄÏÂWeb.config£¬Ò²¿ÉÒÔ´ïµ½ÏàͬµÄЧ¹û¡£
2.н¨Ò»¸öweb·þÎñ£¬WebService.asmx£¬ÔÚWebService.csÐèÒªÌí¼ÓSystem.Web.Script.Services;Õâ¸öÃüÃû¿Õ¼ä£º
using System.Web.Script.Services;
È»ºó¸øWebService ÀàÌí¼Ó[ScriptService]ÊôÐÔÕâÀïÏÈ˵²½Ö裬ºóÃæ˵ÔÀí£¬È»ºó¸øÎÒÃÇÐèÒªµ÷Óõķ½·¨¼ÓÉÏ
[WebMethod]ÊôÐÔ
3.н¨Ò»¸öJScriptÎļþ£¬JScript.js£¬ÀïÃæÓÃÀ´ÏìÓ¦½çÃæʼþ´¦Àí»Øµ÷·½·¨·µ»ØµÄÊý¾Ý
4.н¨Ò»¸öÒ³ÃæDefault.aspx,Èç¹ûÊÇASP.NET AJAX-Enabled Web SiteÒ³ÃæÉÏ»á×Ô¶¯Ìí¼ÓScriptManager¿Ø¼þ£¬Èç¹û²»ÊÇÖ»ÒªÊÖ¹¤ÍÏÉÏÈ¥Ò»¸ö£¬È»ºó¸øScriptManagerÌí¼ÓScript½Úµã£¬Õâ¸ö½ÚµãÓÃÀ´Ö¸¶¨ÒªÊ¹ÓõÄjsÎļþ
<Scripts><asp:ScriptReference Path="~/JScript.js" /></Scripts>
ÔÙ¸øScriptManagerÌí¼ÓServices½Úµã£¬Õâ¸ö½ÚµãÓÃÀ´Ö¸¶¨ÒªÊ¹ÓõÄWebService
<Services><asp:ServiceReference ......
1.ÅÖ¿Í»§¶ËµÄ²¿Êð·½°¸
java web start
.net clickonce
2.ÈëÇÖ˼·
HTTPÊý¾ÝµÄ¼Ç¼->·¢ÏÖajax¿ÉÄÜ´æÔÚÎÊÌâµÄµã->ÈƹýjavascriptµÄһЩÏÞÖƺÍÆƽâjavascript»ìÏý´úÂë->ÕÒµ½jsonµÄsql×¢Èëµã->ÕÒµ½ajax¿ÉÒÔÌí¼Ó¹ÜÀíÔ±µÄ»Øµ÷º¯ÊýºÍjsonÏà¹Ø
3.sql×¢ÈëС¼¼ÇÉ
union select name from sysobjects where xtype='U'Ö»ÒªµÃµ½ÏàͬµÄ×Ö¶Î
4.¿Í»§¶ËÈ¡ÏûcookieÈÏÖ¤²»ÊDZ£Ö¤ÁË°²È«£¬¶øÊÇ°ÑÍþвÓÖÎÞÐÎÀ©´óÁË
5.ajax¹¥»÷²ãÃæ°üÀ¨ÁË´«Í³µÄWEB©¶´+WEB SERIVCES©¶´¡£
6. ±¨Í·ÖпÉÄÜ´æÔÚΣÏÕµÄ×¢Èë
7.RSS×¢Èë(Íⲿ×ÊÁÏ¿ÉÒԲο¼ black hat 2006ÄêRobert Auger
http://www.cgisecurity.com/papers/RSS-Security.pptµÄÎÄÕÂ)
8.jsonµÄ©¶´±ØÐëÒªÑéÖ¤ÐòÁл¯Êý¾Ý(Íⲿ²Î¿¼×ÊÁÏblack hat 2005 Attack web Services: The next Generation of vulneralbe enterprise appsÏÂÔصØÖ·http://www.blackhat.com/presentations/bh-usa-05/bh-us-05-stamos.pdf
ºÍHackInTheBoxµÄpentesting java/j2ee)
9.douglas·ÀÓùJsonµÄeval×¢Èë ......
3 mistakes to avoid when using jQuery with ASP.NET AJAX
AJAX, ASP.NET, JavaScript, jQuery By Dave Ward on June 5th, 2008
Over the past few weeks, I think I have definitely embodied Jeff Atwood’s claim that we’re all amateurs, learning together. Despite my best efforts to thoroughly test before posting, a few problems slipped through in my recent posts about using jQuery to consume ASP.NET JSON serialized web services and using jQuery to call ASP.NET AJAX page methods.
On the bright side, your great feedback in both posts’ comments has reinforced the fact that some of the best content on my blog is the part that you write.
In this post, I’m going to detail three of the problems that were discovered as a result of those previous two posts:
An extra requirement when making a read-only request to IIS6+.
An oddity in Internet Explorer 7’s XmlHttpRequest class.
A common mistake when passing JSON parameters through jQuery.
Finally, I’ll suggest w ......
3 mistakes to avoid when using jQuery with ASP.NET AJAX
AJAX, ASP.NET, JavaScript, jQuery By Dave Ward on June 5th, 2008
Over the past few weeks, I think I have definitely embodied Jeff Atwood’s claim that we’re all amateurs, learning together. Despite my best efforts to thoroughly test before posting, a few problems slipped through in my recent posts about using jQuery to consume ASP.NET JSON serialized web services and using jQuery to call ASP.NET AJAX page methods.
On the bright side, your great feedback in both posts’ comments has reinforced the fact that some of the best content on my blog is the part that you write.
In this post, I’m going to detail three of the problems that were discovered as a result of those previous two posts:
An extra requirement when making a read-only request to IIS6+.
An oddity in Internet Explorer 7’s XmlHttpRequest class.
A common mistake when passing JSON parameters through jQuery.
Finally, I’ll suggest w ......