亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

隱秘的“腳本錯誤”在Chrome和Firefox中以Javascript報告

瀏覽:61日期:2024-05-10 10:26:48
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解決隱秘的“腳本錯誤”在Chrome和Firefox中以Javascript報告?

“腳本錯誤”。當異常違反了瀏覽器的同源策略時,即在錯誤發(fā)生在Firefox,Safari和Chrome中時,即當錯誤發(fā)生在托管于當前頁面域之外的域中的腳本中時。

此行為是有意的,以防止腳本將信息泄漏到外部域。有關(guān)為何有此必要的示例,請想象一下意外訪問evilsite.com,其中包含的頁面<scriptsrc='yourbank.com/index.html'>。(是的,我們將腳本標記指向html而不是JS)。這將導致腳本錯誤,但是該錯誤很有趣,因為它可以告訴我們是否已登錄。如果您已登錄,則錯誤可能是’WelcomeFred...’ is undefined,而如果您未登錄,則可能是’Please Login ...’ is undefined。遵循這些原則。

如果evilsite.com是針對排名前20位的銀行機構(gòu)這樣做的,那么他們會非常了解您訪問的銀行站點,并且可以提供更具針對性的網(wǎng)絡(luò)釣魚頁面。(當然,這只是一個例子。但是它說明了為什么瀏覽器不應(yīng)允許任何 數(shù)據(jù)跨越域邊界。)

我已經(jīng)在Safari,Chrome和Firefox的最新版本中對此進行了測試-他們都這樣做。IE9不會-它將x起源異常與同起源異常相同。(而且Opera不支持onerror。)

從馬口說起:在將異常傳遞給onerror()時檢查來源的WebKit源。并檢查Firefox源。

:跟蹤此問題的Firefox錯誤包括指向啟發(fā)此行為的博客文章的鏈接。

:現(xiàn)在,您可以通過在腳本標簽上指定crossorigin屬性,并讓服務(wù)器發(fā)送適當?shù)腃ORS HTTP響應(yīng)標頭,在某些瀏覽器上啟用完整的跨域錯誤報告。

解決方法

我有一個腳本,該腳本可以在我的網(wǎng)站上檢測Javascript錯誤并將其發(fā)送到我的后端進行報告。它報告遇到的第一個錯誤,假定的行號和時間。

編輯以包含doctype:

<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'><html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en' xmlns:fb='http://www.facebook.com/2008/fbml'>

<script type='text/javascript'>//<![CDATA[// for debugging javascript!(function(window){ window.onerror = function(msg,url,ln) {//transform errorsif (typeof(msg) === ’object’ && msg.srcElement && msg.target) { if(msg.srcElement == ’[object HTMLScriptElement]’ && msg.target == ’[object HTMLScriptElement]’){msg = ’Error loading script’; }else{msg = ’Event Error - target:’ + msg.target + ’ srcElement:’ + msg.srcElement; }}msg = msg.toString();//ignore errorsif(msg.indexOf('Location.toString') > -1){ return;}if(msg.indexOf('Error loading script') > -1){ return;}//report errorswindow.onerror = function(){};(new Image()).src = 'http://www.aoyou183.cn/jserror.php?msg=' + encodeURIComponent(msg) + '&url=' + encodeURIComponent(url || document.location.toString().replace(/#.*$/,'')) + '&ln=' + parseInt(ln || 0) + '&r=' + (+new Date()); };})(window);//]]></script>

由于有了這個腳本,我很清楚自己的網(wǎng)站上發(fā)生的任何JavaScript錯誤。 最大的違規(guī)者之一是“腳本錯誤”。 在Chrome10以上版本和Firefox 3以上版本中, 位于第0行 。此錯誤在Internet Explorer中不存在(或可能稱為其他錯誤?)。

更正(5/23/2013):現(xiàn)在,此“腳本錯誤,第0行”錯誤正在IE7和其他版本的IE中顯示。可能是由于最近的IE安全修補程序引起的,因為以前沒有此行為。

有誰知道這個錯誤是什么意思或者是什么原因?qū)е碌模克l(fā)生在我的總頁面加載量的0.25%左右,占報告的錯誤的一半。

標簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 亚洲精品一区激情区偷拍 | 一级做a爰片 | 国产在视频线精品视频www666 | 拍拍拍无挡视频免费全程1000 | 成人伊人亚洲人综合网站222 | 伊人激情网 | 巨乳毛片| 黄色在线观看免费 | 国产人成精品午夜在线观看 | 成人国产激情福利久久精品 | 99精品视频在线观看免费播放 | 青青综合| 久久一本日韩精品中文字幕屁孩 | semm亚洲欧美在线高清 | 欧美视频在线免费播放 | 这里只有精品首页 | 国产精品免费看久久久香蕉 | 91国内在线国内在线播放 | 99re在线播放| 大杳蕉伊人狼人久久一本线 | 国产亚洲精品午夜一区 | 国产一级二级三级毛片 | 大学生毛片a左线播放 | 看真人一级毛多毛片 | 澳门久久 | 国内精品视频九九九九 | 丰满多水的寡妇毛片免费看 | 久久2| 美女一级视频 | 在线看成人 | 伊人网亚洲 | 国产丰满美女做爰 | 4hc44四虎在线永久地址 | 伊人久久婷婷 | 色婷婷综合在线 | 亚洲欧洲国产综合 | 亚洲国产一区二区三区青草影视 | 成人你懂的 | 97精品国产91久久久久久久 | 日韩一级黄色片 | 国产精品日韩欧美亚洲另类 |