一種獲取網(wǎng)頁(yè)執(zhí)行JavaScript函數(shù)調(diào)用路徑的方法

基本信息

申請(qǐng)?zhí)?/td> CN201710033454.2 申請(qǐng)日 -
公開(公告)號(hào) CN108304173B 公開(公告)日 2021-11-16
申請(qǐng)公布號(hào) CN108304173B 申請(qǐng)公布日 2021-11-16
分類號(hào) G06F8/30(2018.01)I 分類 計(jì)算;推算;計(jì)數(shù);
發(fā)明人 張衛(wèi)豐;劉蕊成;趙晨;陳貴美;許蕾;王子元;周國(guó)強(qiáng);張迎周 申請(qǐng)(專利權(quán))人 南京郵電大學(xué)鹽城大數(shù)據(jù)研究院有限公司
代理機(jī)構(gòu) 北京冠和權(quán)律師事務(wù)所 代理人 趙銀萍
地址 224000江蘇省鹽城市城南新區(qū)新都街道智慧谷科創(chuàng)大廈南15層
法律狀態(tài) -

摘要

摘要 本發(fā)明公開了一種獲取網(wǎng)頁(yè)執(zhí)行JavaScript函數(shù)調(diào)用路徑的方法,通過(guò)使用JavaScript的動(dòng)態(tài)插樁工具Jalangi對(duì)網(wǎng)頁(yè)進(jìn)行動(dòng)態(tài)插樁,對(duì)網(wǎng)頁(yè)中JavaScript執(zhí)行路徑中的所有函數(shù)加入函數(shù)調(diào)用路徑信息。首先定義一個(gè)可以在JavaScript函數(shù)的最后添加一個(gè)參數(shù)的方法,該方法用于在函數(shù)執(zhí)行前在函數(shù)的參數(shù)列表中保存執(zhí)行到當(dāng)前的函數(shù)調(diào)用路徑信息;然后對(duì)如setTimeOut,setInterval,apply和call等函數(shù)加入?yún)?shù)的操作進(jìn)行特殊處理,保證函數(shù)調(diào)用路徑的延續(xù)和統(tǒng)一執(zhí)行;最后對(duì)于生成iframe、script和a標(biāo)簽的部分,輸出對(duì)應(yīng)的函數(shù)調(diào)用路徑信息。該發(fā)明對(duì)函數(shù)調(diào)用關(guān)系有一個(gè)完整的鏈路輸出,方便開發(fā)者追蹤和調(diào)試。