就输出了 begin,然后就报错了,Validate_account都没输出

就输出了 begin,然后就报错了,Validate_account都没输出

提问50.png

展开
收起
云原生那些事 2023-06-25 16:35:20 98 分享 版权
3 条回答
写回答
取消 提交回答
  • 看了下你前面的代码得使用内置运行时,自定义运行时需要你的程序是http server

    此答案来自钉钉群“阿里函数计算官网客户"

    2023-06-25 23:11:26
    赞同 展开评论
  • 根据您提供的代码,有几个语法错误和缺失的部分可能导致问题。以下是修正后的代码示例:

    import pymysql import json

    print("Begin")

    def validate_account(event, context): print("validate account")

    获取请求中的账号和密码

    request_data = json.loads(event) print("data", request_data)

    account = request_data.get('id') password = request_data.get('password')

    validate_account(event, context)

    在修正后的代码中,主要更改如下:

    1. 引入json模块以解析event参数。
    2. 修复了validate_account函数定义中缺少的右括号。
    3. 修正了获取请求数据时的语法错误,将request data修改为request_data
    4. 在函数末尾调用validate_account函数,传递eventcontext参数。

    请注意,这只是修正了语法错误,并假设传递给函数的参数eventcontext正确。如果问题仍然存在,请检查传递给validate_account函数的参数是否正确,并确保您的代码逻辑正确执行。

    2023-06-25 22:40:31
    赞同 展开评论
  • 首先,在函数定义中,缺少了冒号(:)来表示函数体的开始。

    其次,在获取请求数据时,您使用了 request_data = json.loads(event),但是在后续代码中却使用了 request data.get('id'),这里应该是 request_data.get('id')

    下面是修正后的代码:

    import pymysql
    import json
    
    print("Begin")
    
    def validate_account(event, context):
        print("validate_account")
        
        # 获取请求中的账号和密码
        request_data = json.loads(event)
        print("data")
        account = request_data.get('id')
    
    2023-06-25 16:48:01
    赞同 展开评论
问答地址:

快速交付实现商业价值。

收录在圈子:
+ 订阅
阿里云 云原生应用平台 肩负阿里巴巴集团基础设施云化以及核心技术互联网化的重要职责,致力于打造稳定、标准、先进的云原生产品,成为云原生时代的引领者,推动行业全面想云原生的技术升级,成为阿里云新增长引擎。商业化产品包括容器、云原生中间件、函数计算等。
还有其他疑问?
咨询AI助理