97国产精品视频人人做人人爱,3344在线观看无码,成年人国产视频,欧美日一级片,在线看AV天堂,高清无码一本到东京热,欧美一级黄片一区2区,免费又爽又刺激高潮网址

HTML5網頁掃描二維碼

2018-5-22    seo達人

如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

[HTML]代碼

<!DOCTYPE html>
<html>
<head>
    <title>二維碼掃描測試</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<style type="text/css">
    html, body {
        height: 100%;
        width: 100%;
        text-align: center;
    }
</style>
<script src="../js/jquery-1.11.1.min.js"></script>
<script>
    //這段代 主要是獲取攝像頭的視頻流并顯示在Video 簽中
    var canvas = null, context = null, video = null;
    window.addEventListener("DOMContentLoaded", function () {
        try {
            canvas = document.getElementById("canvas");
            context = canvas.getContext("2d");
            video = document.getElementById("video");
            var videoObj = { "video": true, audio: false },
                flag = true,
                MediaErr = function (error) {
                    flag = false;
                    if (error.PERMISSION_DENIED) {
                        alert('用戶拒絕了瀏覽器請求媒體的權限', '提示');
                    } else if (error.NOT_SUPPORTED_ERROR) {
                        alert('對不起,您的瀏覽器不支持拍照功能,請使用其他瀏覽器', '提示');
                    } else if (error.MANDATORY_UNSATISFIED_ERROR) {
                        alert('指定的媒體類型未接收到媒體流', '提示');
                    } else {
                        alert('系統未能獲取到攝像頭,請確保攝像頭已正確安裝。或嘗試刷新頁面,重試', '提示');
                    }
                };
            //獲取媒體的兼容代碼,目前只支持(Firefox,Chrome,Opera)
            if (navigator.getUserMedia) {
                //qq瀏覽器不支持
                if (navigator.userAgent.indexOf('MQQBrowser') > -1) {
                    alert('對不起,您的瀏覽器不支持拍照功能,請使用其他瀏覽器', '提示');
                    return false;
                }
                navigator.getUserMedia(videoObj, function (stream) {
                    video.src = stream;
                    video.play();
                }, MediaErr);
            }
            else if (navigator.webkitGetUserMedia) {
                navigator.webkitGetUserMedia(videoObj, function (stream) {
                    video.src = window.webkitURL.createObjectURL(stream);
                    video.play();
                }, MediaErr);
            }
            else if (navigator.mozGetUserMedia) {
                navigator.mozGetUserMedia(videoObj, function (stream) {
                    video.src = window.URL.createObjectURL(stream);
                    video.play();
                }, MediaErr);
            }
            else if (navigator.msGetUserMedia) {
                navigator.msGetUserMedia(videoObj, function (stream) {
                    $(document).scrollTop($(window).height());
                    video.src = window.URL.createObjectURL(stream);
                    video.play();
                }, MediaErr);
            } else {
                alert('對不起,您的瀏覽器不支持拍照功能,請使用其他瀏覽器');
                return false;
            }
            if (flag) {
                //alert('為了獲得更準確的測試結果,請盡量將二維碼置于框中,然后進行拍攝、掃描。 請確保瀏覽器有權限使用攝像功能');
            }
            //這個是拍照按鈕的事件,
            $("#snap").click(function () { startPat(); }).show();
        } catch (e) {
            printHtml("瀏覽器不支持HTML5 CANVAS");
        }
    }, false);
    //打印內容到頁面
    function printHtml(content) {
        $(window.document.body).append(content + "<br/>");
    }
    //開始拍照
    function startPat() {
        setTimeout(function () {//防止調用過快
            if (context) {
                context.drawImage(video, 0, 0, 320, 320);
                CatchCode();
            }
        }, 200);
    }
    //抓屏獲取圖像流,并上傳到服務器
    function CatchCode() {
        if (canvas != null) {
            //以下開始編 數據
            var imgData = canvas.toDataURL("image/jpeg");
            //將圖像轉換為base64數據
            var base64Data = imgData; //在前端截取22位之后的字符串作為圖像數據
            $.ajax({
                type: 'post',
                url: '../ashx/HandlerScan.ashx?method=ParseImage',
                data: 'ImgData=' + base64Data,
                dataType: "json",
                cache: false,
                timeout: 10000,
                success: function (mes) {
                    if (mes.code == '1') {
                        alert('未識別二維碼,請重新掃描!');
                    }
                    else {
                        alert(mes.name);
                    }
                },
                error: function (err) {
                    alert('掃描失敗' + err);
                }
            });
        }
    }
</script>
<body>
    <div id="support"></div>
    <div id="contentHolder">
        <video id="video" width="320" height="320" autoplay></video>
        <canvas id="canvas" style="display:none; background-color:#F00;" width="320" height="320"></canvas><br/>
        <button id="snap" style="display:none; height:50px; width:120px;">開始掃描</button>
    </div>
</body>
</html>  

[C#后臺]

    public class HandlerScan : IHttpHandler
    {
        private JsonResult js = new JsonResult();
        public void ProcessRequest(HttpContext context)
        {
            string result = string.Empty;
            string method = context.Request.QueryString.ToString();//獲取想要做的操作
            switch (method)
            {
                case "method=ParseImage":
                    result = ParseImage(context);
                    break;
                default:
                    break;
            }
            context.Response.ContentType = "text/json";
            context.Response.Write(result);
        }
        private string ParseImage(HttpContext context)
        {
            try
            {
                string imgStr = context.Request.Params["ImgData"].ToString();
                imgStr = imgStr.Replace("data:image/jpeg;base64,", "");
                //整理字符串
                imgStr = imgStr.Replace(" ", "+");
                byte[] arr = Convert.FromBase64String(imgStr);
                MemoryStream ms = new MemoryStream(arr, 0, arr.Length);
                Bitmap bmp = new Bitmap(ms);
                //解析圖片
                Result result = new BarcodeReader().Decode(bmp);
                if(result == null)
                {
                    return "{\"code\":1,\"name\":\"\"}";
                }
                else
                {
                    string[] a = result.Text.Split(','); 
                    string str = "{\"code\":0,\"name\":\"" + a[0] + "\"}";
                    return str; 
                }
            }
            catch (Exception ex)
            {
                return "{\"code\":1,\"msg\":\"" + ex.Message + "\",\"userName\":\"\"}";
            }
        }
        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
藍藍設計m.0391cbd.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務

日歷

鏈接

個人資料

藍藍設計的小編 http://m.0391cbd.com

存檔

主站蜘蛛池模板: 风韵丰满熟妇啪啪区老熟熟女| 国产剧情国内精品原创| 91色在线观看| 国产最新无码专区在线| 国产精品一区二区国产主播| 久久国产高清视频| 中日韩欧亚无码视频| 中国国语毛片免费观看视频| 欧美成人第一页| 五月天久久综合| 91福利免费| 亚洲成人网在线播放| 五月天综合网亚洲综合天堂网| 国产成本人片免费a∨短片| 色香蕉影院| 欧美精品伊人久久| 亚洲性日韩精品一区二区| 九色国产在线| 亚洲永久色| 福利小视频在线播放| 99久久国产自偷自偷免费一区| 亚洲AV无码乱码在线观看代蜜桃| 99人体免费视频| 99久久精品国产麻豆婷婷| 日韩毛片视频| 国产精品偷伦视频免费观看国产 | 亚洲视频三级| 中文天堂在线视频| 福利一区在线| 欧美国产视频| 国产精品亚洲一区二区三区在线观看| 亚洲中文字幕无码mv| 四虎永久在线精品国产免费| 日韩在线1| 国产福利拍拍拍| 国产精品成| 亚洲区第一页| 国产91无码福利在线| 亚洲精品免费网站| 日本中文字幕久久网站| 国产精品久久久久久久久kt| 国产xx在线观看| 欧美不卡在线视频| 91精品人妻一区二区| 精品超清无码视频在线观看| 中文字幕日韩视频欧美一区| 狠狠色综合久久狠狠色综合| 风韵丰满熟妇啪啪区老熟熟女| 原味小视频在线www国产| 亚洲 成人国产| 福利国产在线| 九九免费观看全部免费视频| 久久国产精品夜色| 国产毛片基地| 国产日韩欧美视频| 国产日韩AV高潮在线| 欧美精品综合视频一区二区| 欧美日韩一区二区在线播放 | 日韩一区二区在线电影| 午夜不卡视频| 久久无码高潮喷水| 国内精品一区二区在线观看| 日韩精品一区二区三区中文无码| 婷婷综合缴情亚洲五月伊| 亚洲精品无码日韩国产不卡| 国产拍揄自揄精品视频网站| 亚洲日本中文字幕乱码中文 | 99久久精品免费看国产电影| 一级毛片无毒不卡直接观看| 亚洲资源站av无码网址| 九色综合视频网| 手机成人午夜在线视频| 孕妇高潮太爽了在线观看免费| 91丨九色丨首页在线播放 | 91成人试看福利体验区| 久久精品中文无码资源站| 日本高清免费一本在线观看| 精品国产毛片| 日韩精品免费一线在线观看| 国产激情无码一区二区APP| 欧美一级在线| 一本大道在线一本久道|