android - 尝试将照片上传到烧瓶服务器
问题描述
我正在做一个项目,我在手机上拍照并上传到服务器。我目前有按钮工作,它返回图像的位置。我应该如何或添加什么来获得 base64 编码,或者我应该如何继续将其上传到烧瓶。谢谢
<div class="page">
<p><img src="img/logo.png" alt="image" id="photo" /></p>
<p><button id="btn">Take Picture</button></p>
<p id="msg"></p>
</div>
<script type="text/javascript" src="cordova.js"></script>
<script>
let app = {
init: function(){
document.getElementById('btn').addEventListener('click', app.takephoto);
},
takephoto: function(){
let opts = {
quality: 80,
destinationType: Camera.DestinationType.FILE_URI,
sourceType: Camera.PictureSourceType.CAMERA,
mediaType: Camera.MediaType.PICTURE,
encodingType: Camera.EncodingType.JPEG,
cameraDirection: Camera.Direction.BACK,
targetWidth: 300,
targetHeight: 400
};
navigator.camera.getPicture(app.ftw, app.wtf, opts);
},
ftw: function(imgURI){
document.getElementById('msg').textContent = imgURI;
document.getElementById('photo').src = imgURI;
},
wtf: function(msg){
document.getElementById('msg').textContent = msg;
}
};
document.addEventListener('deviceready', app.init);
</script>
</body>
解决方案
这里有两个问题。
1)您希望允许您的用户将文件上传到烧瓶。有一种内置的方法可以做到这一点。但是,我个人建议使用Flask-Uploads。这是一个 Flask 扩展,专为简化此操作而设计。
2) 您需要将文件转换为 base-64。有一个名为base64的内置模块
推荐阅读
- python-3.x - Python socket.getaddrinfo() 的 Windows DNS 问题
- excel - 按特定数字递增范围内的值
- android - 在flutter中从firestore获取这些数据后,我想对数据进行洗牌
- asp.net - 如何使用 MVC 5 在控制器外部访问 HttpContext?
- azure-devops - 条件内带有 bash 表达式的 Azure Pipeline
- c# - 我想调用一个位于多个 GameObjects 上的脚本上的函数。但我希望该函数在该实例中仅激活一个对象
- r - 在这种情况下如何正确使用 label_wrap_gen ?
- sql - 从同一张表中计算雇用后的年数
- javascript - 获取 SVG 地图以在点击时更改颜色
- amazon-web-services - 无法连接到 vpc 外部的数据库