Docker - 无法获取用户网络摄像头:getUserMedia() 不再适用于不安全的来源

什么有效


我在Flask中创建了一个简单的 Web 应用程序,它负责return render_template("index.html")在 Web 浏览器访问根节点时操作一个简单的程序。


# app.py

from flask import Flask, render_template

app = Flask(__name__)


@app.route("/")

def show_index():

    return render_template("index.html")


if __name__ == "__main__":

    app.run(port=80)

index.html 是一个简单的页面,它使用tracking.js来获取用户网络摄像头并在实时视频流中跟踪他/她的面部。


打开cmd并输入python app.py结果Running on http://127.0.0.1:80/


访问上述 URL 会导致页面正确显示,要求我获得使用相机的许可,打开它并在实时视频源中正确跟踪我的脸。所以直到这里一切正常。


什么不起作用


当我使用Docker dockerize 我的应用程序时,我遇到的问题出现了。docker-machine ip是 192.168.99.100


打开 cmd 并输入:docker run -p 4000:80 my_face_track_app结果:Running on http://0.0.0.0:80/


访问 192.168.99.100:4000 会导致正确显示,index.html但不再要求我获得相机许可并检查 JS 控制台,我读到以下异常:


getUserMedia() no longer works on insecure origins

这里是完整的错误日志:

http://img1.mukewang.com/611b7b180001f0a109210112.jpg

我知道错误告诉我我没有在 HTTPS 中提供页面。

有没有其他人遇到过这个问题?该问题的正确解决方案或可能的解决方法是什么?任何帮助将不胜感激,非常感谢您提前


慕的地10843
浏览 325回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python