我是网络开发的新手。我想将网络摄像头流发送到我的烧瓶服务器,这将用于服务器中的人脸识别过程。我只是尝试用AJAX发送那些数据,但是控制台显示405方法不允许。有人知道这个问题的解决方案吗?我将不胜感激任何答案。谢谢!
JavaScript
var constraints = { audio: false, video: { width: 500, height: 500 } };
var video = document.querySelector('video');
var canvas = document.querySelector('canvas');
var image = new Object();
navigator.mediaDevices.getUserMedia(constraints)
.then(function(mediaStream) {
video.srcObject = mediaStream;
video.onloadedmetadata = function(e) {
video.play();
};
})
.catch(function(err) { console.log(err.name + ": " + err.message); })
function capture() {
canvas.width = 200;
canvas.height = 200;
canvas.getContext('2d').drawImage(video, 0, 0, 200,200);
var data = canvas.toDataURL('image/jpeg');
return data;
}
setInterval(function(){
var imgData = capture();
image.images = imgData;
$.ajax({
url:'https://0.0.0.0:5000/greet',
type:'POST',
contentType:'application/json',
data:JSON.stringify(image)
}).done(function(){
console.log('success');
})
}, 1000/100)
烧瓶服务器
@app.route('/greet', methods = ['GET'])
def tes():
return render_template('greetings.html')
if __name__ == '__main__':
app.run(host = '0.0.0.0', port = '5000', debug = True, threaded = True, ssl_context = 'adhoc')