سلوك غير متوقع من window.onback في جافا سكريبت؟ [مغلق]

StackOverflow https://stackoverflow.com/questions/243887

  •  04-07-2019
  •  | 
  •  

سؤال

وأنا باستخدام window.onback = history.forward ()؛ لمنع المستخدمين من إعادة تقديم البيانات. وأنا أعلم أنه الإختراق وأنا لا أحب ذلك سواء، ولكن هذا ليس ما هو هذا السؤال عنها. والمشكلة هي أن رمز يمنع صفحات أخرى من العودة إلى صفحة مع التعليمات البرمجية. اسمحوا لي أن أوضح.

وPageA.aspx لديه شفرة جافا سكريبت في ذلك. يقوم المستخدم بإرسال PageA، يضرب العودة، ولا شيء يحدث. هذا طيب. الآن يقوم المستخدم بالنقر فوق وصلة لPageB.aspx، والتي لا <م> لا لديك رمز. عندما يقوم المستخدم بالنقر فوق الزر الخلف، والتي ينبغي أن يأخذها إلى PageA.aspx، فإنه لا يفعل ذلك. فإنه يسلك نفس السلوك كما لو كان PageB على عدم العودة شفرة جافا سكريبت.

إليك كيفية لدي تنفيذه في PageA.aspx:

<script type="text/javascript">
window.onback = history.forward();
</script>

ولقد أكد أن هذا الرمز هو فقط في PageA.aspx وليس في الماجستير، ويشمل، أو أي شيء آخر. هذا هو ASP.NET 2.0 التطبيق تشغيل في SharePoint 2007. المتصفح IE7.

وأي أفكار؟

هل كانت مفيدة؟

المحلول

وأنا لم يكن لديك الوقت (أو SharePoint07) لإعادة إنتاج كنت البيئة والسيناريو، ولكن ماذا لو كنت وضعت اختبار الموقع في جافا سكريبت؟

وشيء من هذا القبيل:

<script type="text/javascript">
if (window.location.indexOf("PageA.aspx", 0) > 0)
{
   window.onback = history.forward();
}
</script>

وأنا لا يمكن أن يفسر ما يحدث، ولكن هذا من شأنه أن يساعد الحد من نطاق الإختراق.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top