开发者社区 > 云原生 > Serverless > 正文

函数计算node 项目在测试中已经正常运行了,但是目前还是提示服务器错误无法访问,是哪儿存在问题?

函数计算node 项目在测试中已经正常运行了,但是目前还是提示服务器错误无法访问,是哪儿存在问题?
71f7bbb6e7fc093bd74e06498c999957.png
1dda191da18f55a2d3f877df404bbc25.png

展开
收起
嘟嘟嘟嘟嘟嘟 2023-12-07 11:34:21 35 0
3 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    函数计算在测试中已经正常运行,但是提示服务器错误无法访问,可能有以下几种原因:

    1. 网络问题:请检查您的网络连接是否正常,确保您的设备可以访问到函数计算服务所在的服务器。

    2. 防火墙设置:请检查您的防火墙设置,确保允许函数计算服务的访问。

    3. 自定义层配置问题:请检查您在部署函数时是否选择了正确的自定义层,以及自定义层的依赖是否正确安装。

    4. 函数计算服务配置问题:请检查您的函数计算服务的配置,例如超时时间、内存限制等,确保它们符合您的项目需求。

    5. 代码问题:请检查您的代码是否存在错误,例如语法错误、逻辑错误等。

    6. 日志查看:您可以查看函数计算服务的日志,以获取更详细的错误信息。在函数计算控制台中,选择“日志”选项卡,然后查看最近的错误日志。

    2023-12-07 13:06:07
    赞同 展开评论 打赏
  • 网站:http://ixiancheng.cn/ 微信订阅号:小马哥学JAVA

    首先是个内部服务错误;
    函数计算的返回参数格式:
    函数计算需要将输出内容通过如下 JSON 格式返回给 API 网关,以便 API 网关解析。
    {
    "isBase64Encoded":true|false,
    "statusCode":httpStatusCode,
    "headers":{response headers},
    "body":"..."
    }
    当 body 内容为二进制编码时,需在函数计算中对 body 内容进行 Base64 编码,设置"isBase64Encoded" 的值为 "true"。如果 body 内容无需 Base64 编码,"isBase64Encoded" 的值为 "false"。API 网关会对 "isBase64Encoded" 的值为 "true" 的 body 内容进行 Base64 解码后,再返回给客户端。

    在 Node.js 环境中,函数计算根据不同的情况设置 callback。

    返回成功请求: callback(null,{"statusCode":200,"body":"..."})。

    返回异常:callback(new Error('internal server error'),null)。

    返回客户端错误: callback(null,{"statusCode":400,"body":"param error"})。

    如果函数计算返回不符合格式要求的返回结果,API 网关将返回 503 Service Unavailable 给客户端。

    参考阿里云官方地址:
    https://help.aliyun.com/zh/api-gateway/user-guide/function-compute/
    image.png

    2023-12-07 11:49:19
    赞同 展开评论 打赏
  • 从控制台点测试函数再试下 还有服务端错误从函数日志中看下报错。此回答整理自钉群“阿里函数计算官网客户”

    2023-12-07 11:46:57
    赞同 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    探究 Node.js 的服务端之路 立即下载
    个推微服务实践 基于OpenResty 和Node.js 立即下载
    沪江基于Node.js大规模应用实践 立即下载