小编Gig*_*ass的帖子

每当我的标头状态代码不是 200 时,GCP 日志就会显示函数“函数执行花费了 xxx 毫秒。已完成状态:响应错误”

如标题中所述,每当我将响应标头设置为默认值 (200) 之外的任何状态代码时,我都会在日志中收到响应错误。这在几周前没有发生,所以我不确定为什么现在会发生。另一个线程: Firebase Cloud Function finish with status: 'response error' 表示我的函数响应的 HTTP 请求高于 10MB。但是,我决定只部署一个函数(getTest),它只是

package foo

import (
    "net/http"
)

func GetTest(w http.ResponseWriter, r *http.Request) {
    // Status Code Test
    w.WriteHeader(201) // Testing with status code 201
    return
}
Run Code Online (Sandbox Code Playgroud)

我仍然返回“响应错误”。将上述测试代码中的任何状态代码(201,400,404,500 等)替换为 200 将导致状态代码 200 的成功 GCP 日志。

此外,如果先前的调用以响应错误结束,GCP有时会自动再次调用该函数,状态为 200,如图#1 所示。我说有时是因为我无法始终如一地展示这个问题。我相信,在这次重新调用期间,我的代码中没有实际执行任何内容,它只是返回 200。

有人知道这个问题吗?

编辑:我还想指出我只在云函数日志上看到这个“响应错误”。在我的 API 网关日志中,我看到函数结束时的正确状态代码。

照片#1

go google-cloud-platform google-cloud-functions

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