如何看待《關于禁止小程序 JavaScript 解釋器使用規范要求》?
?為進一步提升小程序的安全性和用戶體驗,目前平臺對提審的小程序均需進行安全檢測,在檢測過程中,發現有小程序采用內置 JavaScript 解釋器(如 eval5、estime、evil-eval 等)的方式,動態執行 JS 代碼、對小程序 wxml 代碼進行熱更新。對于使用解釋器的小程序,平臺將自 2022 年 7 月 6 日開始在代碼審核環節進行駁回,請各位開發者于 7 月 6 日前完成自查、修復。
具體違規案例
一、動態下發代碼執行
某小程序引入 JS 解釋器模塊,在預埋場景下觸發動態執行代碼的邏輯,從而從服務端后臺拉取要動態執行的代碼或字段,在 JS 解釋器中動態執行代碼;
二、小程序頁面文件熱更新
下面這個例子為某小程序引入 JS 解釋器模塊執行小程序熱更新;
三、其他情況
部分數值計算類小程序會引入解釋器來執行數學表達式運算功能,對于數值計算,請使用其他方式,不得使用解釋器提供的動態 eval 代碼執行能力實現;
四、修復指引
若小程序在代碼提審階段因存在解釋器被要求整改,請根據代碼提審反饋,自查相應的文件,在刪除相應的解釋器文件后重新提交代碼審核;
其他常見問題
Q1: 小程序中解釋器文件是第三方包依賴引入的,這種如何處理?
A1: 平臺不允許開發者使用 JS 解釋器來動態執行代碼,若小程序代碼中存在 JS 解釋器邏輯,請根據小程序審核駁回細節自行移除或聯系依賴提供者、服務商移除后再次提交審核;
Q2: 經過自查后提交代碼仍提示存在解釋器,這種如何處理?
A2: 請確保提交的小程序代碼中不存在解釋器文件以及 JavaScript 代碼解析模塊非正常使用,若仍存在問題,請提交客服復查。