我有一些代码通过initialize_callback
中的IoTHub Device SDK设置回调,此时,它可以访问应用程序配置。但是,当调用device_twin_callback
时,我在app.app_context()
行上得到一个错误(RuntimeError: Working outside of application context.
),或者在访问app.config
时,我没有按app_context()
我不确定它是否与回调的设置方式(MQTT)有关,或者是否遗漏了一些内容
一个可行的方法是直接导入配置文件,但这似乎是Flask已经定义良好的app.config的反模式
from flask import current_app as app
from iothub_client import IoTHubClient
class Session():
def __init__(self, device_connection_string):
self.client = IoTHubClient(device_connection_string, IoTHubTransportProvider.MQTT)
def device_twin_callback(self, update_state, payload, user_context):
with app.app_context():
print(app.config)
def initialize_callback(self):
print(app.config)
self.client.set_device_twin_callback(self.device_twin_callback, 0)
目前没有回答
相关问题 更多 >
编程相关推荐