Google Pub/Sub - 向主题发布消息后,本地函数未找到事件数据

Google Pub/Sub - No event data found from local function after published message to topic

我正在使用 Functions Framework with Python alongside Google Cloud Pub/Sub Emulator。我遇到了从已发布消息到主题触发的事件的问题,其中没有找到该函数的事件数据。请参阅下面的更多详细信息。

  1. Topic is created 作为 test-topic
  2. 函数在 http://localhost:8007 下启动。
  3. Create push subscription test-subscription 对于 test-topic 对于端点:http://localhost:8007

当我通过 Postman 中的 POST 请求从 http://localhost:8006test-topic 发布消息时,我收到 200 响应以确认消息已成功发布。表示 http://localhost:8007 的函数作为 event 执行,如函数框架的日志中所示。但是,在调试触发函数时,没有 event 的实际数据。

有人遇到过这种情况吗?任何ideas/suggestions关于这个?
也许,这是真的? #23 Functions Framework does not work with the Pub/Sub emulator

已安装的模块

python版本

我将关闭此 post,因为该问题确实是去年报告的 bug

更新:作为解决此错误之前的解决方法,我将下面的 code 在本地复制到 view_func 嵌套函数内的 functions_framework/__init__.py,在 _event_view_func_wrapper 函数内。

if 'message' in event_data:
    if 'data' not in event_data:
        message = event_data['message']
        event_data['data'] = {
            'data': message.get('data'),
            'attributes': message.get('attributes')
        }