上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
返回列表 发新帖

【嶺上開花】油猴实战过人脸之图片劫持

[复制链接]
  • TA的每日心情
    开心
    2023-2-28 23:59
  • 签到天数: 191 天

    [LV.7]常住居民III

    620

    主题

    5084

    回帖

    5958

    积分

    管理员

    非物质文化遗产社会摇传承人

    积分
    5958

    荣誉开发者管理员油中2周年生态建设者喜迎中秋

    发表于 2022-12-15 00:46:43 | 显示全部楼层 | 阅读模式

    正文

    那上节课我们已经确定理论了
    我们直接实战
    当点击按钮触发摄像头拍照后
    直接回调文件选择
    这里我就干脆封出来一个函数
    获取到file对象之后转成base64,去掉前缀,然后回调callback
    这里没用promise是因为原来的WebViewJavascriptBridge不是一个async对象,我们保持一致

    function receivePicture(callback){
        let input=document.createElement('input');
        input.setAttribute('type', 'file');
        input.setAttribute('multiple', 'multiple');
        input.accept="image/*"
        input.addEventListener('change',(e)=>{
            const file=e.target.files[0]
            const reader = new FileReader();
            reader.addEventListener('load', ()=> {
                callback(reader.result.replace('data:image/jpeg;base64,',""))
            });
            reader.readAsDataURL(file);
    
        })
        input.click()
    }

    然后直接些对应的调用
    收到base64之后包装一下返回去

            if(name==='examPushSign'){
                receivePicture(xxxxx)
                return
            }

    我们接下来测试一下效果
    图片.png
    开始选择文件
    图片.png

    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

    入驻了爱发电https://afdian.net/a/lihengdao666
    个人宣言:この世界で私に胜てる人とコードはまだ生まれていません。死ぬのが怖くなければ来てください。
  • TA的每日心情
    慵懒
    2023-6-4 20:12
  • 签到天数: 121 天

    [LV.7]常住居民III

    0

    主题

    139

    回帖

    130

    积分

    中级工程师

    积分
    130

    新人报道油中2周年

    发表于 2022-12-15 14:49:42 | 显示全部楼层
    搜得死内
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-6-9 00:39
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    3

    主题

    48

    回帖

    37

    积分

    助理工程师

    积分
    37
    发表于 2022-12-22 09:51:57 | 显示全部楼层
    我逃不过这一关了呜呜人脸和环境注定要我自己答题捏
    妹妹自幼就笨,靠ggm的jio本过完学习生涯了!
    回复

    使用道具 举报

    发表回复

    本版积分规则

    快速回复 返回顶部 返回列表