跟大家在交流中很多人說(shuō)源碼是壓縮過(guò)的可讀性很差,拿到源碼也沒(méi)有意義。但是其實(shí)只要將代碼格式化后,代碼的可讀性還是很高的,而且通過(guò)微信開(kāi)發(fā)工具斷點(diǎn)調(diào)試,一些邏輯還是很容易梳理清楚的。 上圖就是通過(guò)斷點(diǎn)調(diào)試找到了最終提交 score 的網(wǎng)絡(luò)請(qǐng)求 另外問(wèn)的最多的就是目前小游戲無(wú)法進(jìn)行網(wǎng)絡(luò)請(qǐng)求的問(wèn)題,如下圖 這是因?yàn)椴还苁切∮螒蜻€是小程序,網(wǎng)絡(luò)請(qǐng)求都是受到限制的,需要在微信公眾平臺(tái)中注冊(cè)合法的服務(wù)器域名,如下圖所示 但是目前小游戲還沒(méi)有開(kāi)放注冊(cè),所以是無(wú)法進(jìn)行服務(wù)器域名配置的,而微信開(kāi)發(fā)工具提供的測(cè)試小游戲 APP ID 是 wx6ac3f5090a6b99c5 是沒(méi)有配置任何的服務(wù)器域名的 ![]() 但是在萬(wàn)能的抓包工具Charles 幫助下,是可以打破這個(gè)限制的 對(duì) Charles 不太了解的可以參考一下這篇文章 操作首先打開(kāi) Charles 并運(yùn)行 Charles 對(duì)本地電腦進(jìn)行 HTTPS 抓包,因?yàn)閷?duì) HTTPS 進(jìn)行抓包需要安裝證書(shū),具體的操作步驟請(qǐng)參考Charles 從入門到精通 之后打開(kāi)微信開(kāi)發(fā)工具,然后新建一個(gè)項(xiàng)目,使用 wx6ac3f5090a6b99c5 做為 APP ID,這是微信默認(rèn)小游戲測(cè)試開(kāi)發(fā) ID,然后新建一個(gè)空的小游戲項(xiàng)目,點(diǎn)擊確定之后,查看 Charles 的控制臺(tái) 找到以下的訪問(wèn)請(qǐng)求 https://servicewechat.com/wxa-dev-logic/batchgetappattr 查看該請(qǐng)求的返回包體,會(huì)發(fā)現(xiàn)默認(rèn)返回的服務(wù)器域名是空數(shù)組 在這里只要使用 Charles 的 Map 功能在請(qǐng)求返回的 reponse 信息里面,加入我們想訪問(wèn)的服務(wù)器域名,就可以突破微信開(kāi)發(fā)工具對(duì)小游戲網(wǎng)絡(luò)請(qǐng)求的限制了 在 Charles 的菜單中,選擇 “Tools”-> “Map Local” 即可進(jìn)入到相應(yīng)功能的設(shè)置頁(yè)面 然后在對(duì)應(yīng)配置選項(xiàng)中輸入以下信息,本地的 reponse 文件可以參考 這里 完成以上配置之后,退出微信開(kāi)發(fā)者工具,再打開(kāi)剛才新建立的項(xiàng)目,就會(huì)發(fā)現(xiàn)此時(shí)的項(xiàng)目設(shè)置里面已經(jīng)有了我們想要添加的服務(wù)器域名了 而且調(diào)試小游戲的網(wǎng)絡(luò)模塊,發(fā)現(xiàn)網(wǎng)絡(luò)是可以進(jìn)行的訪問(wèn)的 總結(jié)目前小游戲還沒(méi)有開(kāi)放注冊(cè),但是可以先通過(guò)這種方式突破小游戲?qū)τ诰W(wǎng)絡(luò)請(qǐng)求的訪問(wèn)限制,提前進(jìn)行開(kāi)發(fā)。 |