(unknown): Script Error
當未捕獲的 JavaScript 錯誤違背跨邊界原則時,就會發生指令碼錯誤。例如,如果將 JavaScript 程式碼託管在 CDN 上,則任何未被捕獲的錯誤(通過 window.onerror 處理程式發出的錯誤,而不是 try-catch 中捕獲到的錯誤)將僅報告為“指令碼錯誤”。這是瀏覽器的一種安全措施,主要用於防止跨域傳遞資料的情況出現。
要獲取真實的錯誤訊息,需要執行以下操作:
Access-Control-Allow-Origin
將 Access-Control-Allow-Origin 設定為 , 表示可以從任何域正確訪問資源。 如有必要,也可以用自己的域名進行替換,例如:
Access-Control-Allow-Origin:
以下是在各種環境中設定的一些示例: Apache
在 JavaScript 資料夾中,建立一個 .htaccess 檔案,幷包含以下內容: Nginx
將 add_header 指令新增到提供 JavaScript 檔案的 location block 中: HAProxy
將以下內容新增到提供 JavaScript 檔案的靜態資源配置後端: 在指令碼標籤上設定crossorigin =“anonymous”
在你的 HTML 原始碼中,為每一個指令碼設定 Access-Control-Allow-Origin,在設定 SCRIPT 標籤中,設定 crossorigin=“anonymous”。在將 crossorigin 屬性新增到指令碼標籤之前,請確保正在向指令碼檔案傳送 header。在 Firefox 中,如果 crossorigin 屬性存在但 Access-Control-Allow-Origin 標題不存在,則指令碼不會執行。