我想明白髮生了什麼,當我點擊一個按鈕,我得到一個POST請求,而我得到查詢請求(結果)。現在,我希望能夠做到的要求不點擊,不使用事件觸發,我希望能夠通過它來打字Firebug的-command線的要求去做。該按鈕有一個keydown事件,功能"fn.apply(object, args)"
,它調用一些我還不知道的對象和參數。如何知道它的標題和POLL響應POST查詢?
- 沒有這些信息,有沒有辦法重做剛剛完成的POST請求而不點擊?
相關的帖子在這兒,我問events,現在範圍只是試圖複製POST - 請求得到探詢請求。
我覺得我有存儲與事物的瀏覽器的所有相關信息,如會話ID,所以我只需要觸發觸發了POST查詢的功能或直接觸發POST查詢。
我該如何做POST查詢?
如果我不能用這些信息再次進行POST查詢,還有什麼做我需要做一個POST查詢?
什麼是Silverlight的使用與SVC推斷?我是否需要以某種方式格式化查詢或POST查詢是否標準化?
POST/POLL網址
http://game.com/Presentation/Service.svc/ajaxEndpoint/StartSearch
http://game.com/Presentation/Service.svc/ajaxEndpointPoll
POST開始搜索
Request Headers
Host game.com
User-Agent Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.17) Gecko/20110422 Ubuntu/10.04 (lucid) Firefox/3.6.17
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language en-us,en;q=0.5
Accept-Encoding gzip,deflate
Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive 115
Connection keep-alive
Content-Type application/json; charset=UTF-8
X-Qooxdoo-Response-Type application/json
Referer http://game.com/index.aspx
Content-Length 110
Cookie __utma=30514082.25780803.1305937283.1306259330.1306374895.6; __utmz=30514082.1306376876.6.8.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=JSON%20site%3Agame.com; __utmb=30514082.9.10.1306374895; __utmv=; __utmc=30514082; s_sq=%5B%5BB%5D%5D; s_cc=true; s_ria=flash%2010%7Csilverlight%20not%20detected
Pragma no-cache
Cache-Control no-cache
POLL請求頭
POST /Presentation/Service.svc/ajaxEndpoint/Poll HTTP/1.1
Host: game.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.17) Gecko/20110422 Ubuntu/10.04 (lucid) Firefox/3.6.17
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Content-Type: application/json; charset=UTF-8
X-Qooxdoo-Response-Type: application/json
Referer: http://game.com/index.aspx
Content-Length: 295
Cookie: __utma=30514082.25780803.1305937283.1306259330.1306374895.6; __utmz=30514082.1306376876.6.8.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=JSON%20site%3Agame.com; __utmv=; __utmc=30514082; s_sq=%5B%5BB%5D%5D; s_cc=true; s_ria=flash%2010%7Csilverlight%20not%20detected
Pragma: no-cache
Cache-Control: no-cache
[更新]
導演回覆阿賈克斯,我認爲它可能工作類似下面。在投票回覆來自POST請求的JSON的
一種格式的JSON的
var client = new XMLHttpRequest();
client.open("POST", "http://game.com/Presentation/Service.svc/ajaxEndpoint/StartSearch", true);
client.setRequestHeader("Content-Type", "application/json; charset=utf-8");
client.send('{"session":"xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx","cityid":"787878788","maxGold":0,"resType":0,"maxTime":86400}');
alert(client.getResponseText);
// document.getElementById("myDiv").innerHTML= client.responseText;
格式,顯然有某種驗證的:它運行,但不工作像預想的那樣(調試...)請求前的東西。在POST查詢後收到它作爲POLL。如果我能理解,我需要一個新的請求ID,新的時間,我可能需要更新一些東西。
{"session":"xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx","requestid":"111","requests":"UA:\fMM:888,0,\fCAT:1\fSERVER:\fALLIANCE:\fQUEST:\fEE:\fPLAYER:\fCITY:111111111\fWC:\fWORLD:\fVIS:c:111111111:0:-1111:-111:222:444\fUFP:\fREPORT:\fMAIL:\fFRIENDINV:\fTIME:11111111111111\fCHAT:\fSUBSTITUTION:\fINV:\fALL_AT:\fMAT:333333333\fSEARCH:\f"}
jQuery的選項
很多答案建議jQuery的,所以我跑了Firebug的jQuery的源here,但沒有得到它的工作,嘗試。這可能是執行POST查詢的最簡單方法。如果有人可以告訴某種vizualiser查看我的POLL查詢,將不勝感激(不知道使用firebug的分析器和調試器確定哪個是錯誤的)。這可能是我沒有捕獲輸出,但它即將到來,目前正在接收undefined
作爲回覆。
對不起,我不明白的例子,[這裏](http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_first),當我複製粘貼代碼文件,然後'$回聲「你好,世界!」 > ajax_info.txt',它在網站上不起作用。爲了使用Ajax,我需要做一些配置嗎?在我自己的機器上嘗試Ajax會很酷。 – hhh 2011-05-26 23:22:45
我很難理解POST是如何工作的。我可以看到,連接在某些時間段(例如爲了保持活躍狀態)像服務器ping一樣工作,但我很困惑事情是如何進行的。我已經調查過一些POST/POLL的東西,試圖向他們學習,其中一個是遊戲[here](http://www.lordofultima.com/en/game/index)(JS遊戲,所以我可以看到代碼和學習從酷,但代碼混淆,缺乏描述性的名稱等)。你的jQuery建議是否適用於任意遊戲,可以每次在POST/Poll的用戶空間中使用它嗎? – hhh 2011-05-27 00:04:22
[它可能會更好找到不同於w3schools的來源](http://w3fools.com/)。 – sarnold 2011-05-28 02:42:25