小编Lee*_*rne的帖子

使用 Python for PyQt WebEngine 授予对摄像头和麦克风的访问权限

我正在构建一个从 Python 调用的简单 Web 应用程序。我正在使用下面的代码。加载此页面时,以编程方式授予对 Cam & Mic 访问权限的最简单方法是什么?我只在网上找到了 C++ 示例,但找不到在 Python 代码中执行此操作的方法。

from PyQt5.QtWidgets import QApplication
from  PyQt5.QtWebEngineWidgets import QWebEngineView
from PyQt5.QtCore import QUrl

app = QApplication([])

view = QWebEngineView()
view.load(QUrl("https://test.webrtc.org/"))
view.show()
app.exec_()
Run Code Online (Sandbox Code Playgroud)

python pyqt webrtc pyqt5 qwebengineview

3
推荐指数
1
解决办法
1125
查看次数

Flask-SocketIO 应用程序继续使用轮询

我有一个用 编写的基本 websocket 服务器应用程序Flask-SocketIO,位于 AWS 中的 NGINX 后面。我可以使用 Web 客户端(Chrome 和 FFox)成功连接到它,但它一直使用轮询而不是 Web 套接字。测试时,我一遍又一遍地在控制台中看到如下消息:

127.0.0.1 - - [2018-04-27 11:59:43] "GET /socket.io/?token=1234567890qwertyuiop&EIO=3&transport=polling&t=1524830363623-23&sid=c4606e25c4603e23&sid=c4606e2f18c403e24b160d16c50a16c50c50d12f10d12f9d1234567890qwertyuiop&EIO=3

经过一番研究,我在客户端连接选项中添加了“rememberTransport:false”,但这并没有帮助,所以大概是我的代码或配置有问题。我希望有人能够发现我犯的一个明显的(菜鸟)错误。

更新 29/4/2018

我更改了我的 AWS 安全组,这样我就可以绕过 NGINX 并直接访问测试 WSGI 服务器。所以现在我在本地 PC 上使用http://serverIP:5000。我仍然遇到同样的问题,所以它与 NGINX 配置无关。

我只是将示例代码复制到我的 RPi3B 并在那里运行服务器。我的三星手机浏览器、PC FFox、PC Chrome 和 RPi Chromium 都会导致轮询连接。所以看起来问题出在 Flask-SocketIO 服务器上。我的代码非常简单,那么有什么问题呢?

我的服务器代码如下:

#!/usr/bin/env python
from flask_socketio import SocketIO, join_room, send, emit, disconnect
from flask import Flask, render_template, request

robotAIapp = Flask(__name__)
socketio = SocketIO(robotAIapp)

@robotAIapp.route('/wsLogin.html')
def wsLogin():
    return render_template('wsLogin.html')

@socketio.on('connect')
def …
Run Code Online (Sandbox Code Playgroud)

python nginx flask-socketio

1
推荐指数
1
解决办法
1491
查看次数

标签 统计

python ×2

flask-socketio ×1

nginx ×1

pyqt ×1

pyqt5 ×1

qwebengineview ×1

webrtc ×1