-
لقد اكتشفت مؤخرًا أن رموز التحقق الصوتي أصبحت أكثر شيوعًا، على سبيل المثال، رأيتها في صندوق بريد Gmail المسجل. وهناك أيضًا رموز التحقق الصوتي على صفحات MSN، وبعض مواقع الويب الأجنبية.
بعد قضاء الوقت في البحث، يكمن الاختلاف الرئيسي بين رموز التحقق الصوتي ورموز التحقق العامة في كيفية تشغيل رمز التحقق. مبدأ رمز التحقق الصوتي في هذه المقالة: إنشاء رمز التحقق من الخادم،
واحفظه في ملف تعريف الارتباط (getcode.aspx.cs). عند النقر للاستماع إلى رمز التحقق، اتصل بعملية javascirpt (يتم استخدام jquery هنا) لقراءة رمز التحقق من ملف تعريف الارتباط.
ثم قم بنقل رمز التحقق إلى صفحة codevoice.aspx، ثم قم بتجميع رمز التحقق لإنشاء ملف mp3، وأخيرًا قم بنقل هذا الملف إلى الفلاش للتشغيل.
الصوت الذي ستسمعه هو: "رمز التحقق الحالي هو 5678، يرجى إدخاله". يشبه هذا المبدأ رمز التحقق الصوتي الذي تستخدمه معظم مواقع الويب.
تنزيل كود المصدر: تنزيل (يرجى استخدام VS2008 SP1 أو VS2010 للفتح)
ضع رمز صفحة صورة رمز التحقق على الصفحة
عرض نسخة عادية إلى الحافظة؟
<معرف النموذج = "form1" runat = "الخادم">
<ديف>
<نوع الإدخال = "نص" اسم = "txtCode" معرف = "txtCode" أقصى طول = "8" />
<img onclick = "this.src = 'getcode.aspx'؛" src = "getcode.aspx" mce_src = "getcode.aspx" محاذاة = "absmiddle" نمط = "المؤشر: المؤشر" mce_style = "المؤشر: المؤشر" بديل ="لا أستطيع الرؤية بوضوح، يرجى تغيير واحدة أخرى" title="لا أستطيع الرؤية بوضوح، يرجى تغيير واحدة أخرى" />
<img id = "imgRead" src = "image/maintb.gif" mce_src = "image/maintb.gif" align = "absmiddle" style = "cursor: pointer" mce_style = "cursor: pointer" alt = "استمع إلى التحقق" كود " title="استمع إلى رمز التحقق" onclick="playvoice('player');" />
<span id="player"></span>
</div>
</النموذج>
<معرف النموذج = "form1" runat = "الخادم">
<ديف>
<نوع الإدخال = "نص" اسم = "txtCode" معرف = "txtCode" أقصى طول = "8" />
<img onclick = "this.src = 'getcode.aspx'؛" src = "getcode.aspx" mce_src = "getcode.aspx" محاذاة = "absmiddle" نمط = "المؤشر: المؤشر" mce_style = "المؤشر: المؤشر" بديل ="لا أستطيع الرؤية بوضوح، يرجى تغيير واحدة أخرى" title="لا أستطيع الرؤية بوضوح، يرجى تغيير واحدة أخرى" />
<img id = "imgRead" src = "image/maintb.gif" mce_src = "image/maintb.gif" align = "absmiddle" style = "cursor: pointer" mce_style = "cursor: pointer" alt = "استمع إلى التحقق" كود " title="استمع إلى رمز التحقق" onclick="playvoice('player');" />
<span id="player"></span>
</div>
</النموذج>
وظيفة js التي يتم استدعاؤها عند النقر للاستماع إلى رمز التحقق هي كما يلي:
عرض نسخة عادية إلى الحافظة؟
وظيفة بلايفويس (معرف) {
فار voiceid = document.getElementById(id);
var voicecode = $.cookie('ValidateCode');
voiceid.innerHTML = "<embed id='sound_play' name='sound_play' src="sound_play.swf؟" + (new Date().getTime()) + "" mce_src="sound_play.swf؟" + (جديد) التاريخ ().getTime ()) + ""
FlashVars='isPlay=1&url=codevoice.aspx&code=" + voicecode + "' width='0' height='0'allowScriptAccess='always'
ype='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' /></embed>";
}
وظيفة بلايفويس (معرف) {
فار voiceid = document.getElementById(id);
var voicecode = $.cookie('ValidateCode');
voiceid.innerHTML = "<embed id='sound_play' name='sound_play' src="sound_play.swf؟" + (new Date().getTime()) + "" mce_src="sound_play.swf؟" + (جديد) التاريخ ().getTime ()) + ""
FlashVars='isPlay=1&url=codevoice.aspx&code=" + voicecode + "' width='0' height='0'allowScriptAccess='always'
type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' /></embed>";
}
من بينها $.cookie('ValidateCode') لقراءة رمز التحقق من ملفات تعريف الارتباط، ويتم استخدام البرنامج الإضافي لملفات تعريف الارتباط jquery هنا.
رمز إنشاء صفحة mp3 هو كما يلي:
// اقرأ رمز التحقق لإنشاء ملف mp3، بما في ذلك header begin.mp3 وtail end.mp3
عرض نسخة عادية إلى الحافظة؟
Response.ContentType = "audio/mpeg";
Response.WriteFile("sound/begin.mp3");
string checkCode = HttpContext.Current.Request.QueryString["code"].ToString();// string checkCode = "8888";
إذا (checkCode.Length > 0)
لـ (int i = 0; i < checkCode.Length; i++)
{
Response.WriteFile("sound/"+checkCode[i] + ".mp3");
}
Response.WriteFile("sound/end.mp3");
Response.ContentType = "audio/mpeg";
Response.WriteFile("sound/begin.mp3");
string checkCode = HttpContext.Current.Request.QueryString["code"].ToString();// string checkCode = "8888";
إذا (checkCode.Length > 0)
لـ (int i = 0; i < checkCode.Length; i++)
{
Response.WriteFile("sound/"+checkCode[i] + ".mp3");
}
Response.WriteFile("sound/end.mp3");
[قام مؤلف هذه المقالة بنشرها في نفس الوقت على cnblogs وcsdn وhttp://www.ajaxcn.net ، برجاء الاحتفاظ بهذه الملاحظة عند إعادة الطباعة]
يقوم رمز تشغيل الفلاش بشكل أساسي بإجراء النقر بزر الماوس الأيمن على إطار المفتاح الأول، أدخل الكود التالي وفقًا لعنوان mp3 الخاص برقم التشغيل الوارد.
عرض نسخة عادية إلى الحافظة؟
var mysound = new Sound();
فار mysong = url;
فار isPlay = 1;
var intnum:Number = setInterval(playSong, 500);
وظيفة بلايسونج () {
إذا (isPlay == 1) {
mysound.loadSound(mysong+"?code="+code, true);
mysound.start();
ClearInterval(intnum);
isPlay = 0;
}