You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac下用dev_appserver.py部署Python文件遇YAMLError求助

解决dev_appserver.py部署时的EventListenerYAMLError问题

首先得明确:这个报错提示的是YAML语法错误,但你贴出来的是Python代码,说明问题出在你的app.yaml配置文件里,而不是serial_lambda.py本身。dev_appserver.py启动Google App Engine项目时会优先读取app.yaml,当这个文件的YAML语法不符合规范时(比如冒号后没加空格、缩进错误),就会抛出这个定位到行和列的错误。

第一步:修复app.yaml的语法问题

找到你的app.yaml文件,定位到第8行第17列的位置,常见的错误原因包括:

  • 键值对的冒号后面没有加空格,比如写成key:value,正确格式应该是key: value
  • 缩进使用了制表符(Tab),YAML要求必须用空格缩进
  • 嵌套结构的缩进层级不匹配

给你一个适合Python 2.7 GAE项目的标准app.yaml示例,你可以参考调整:

runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /.*
  script: serial_lambda.app

第二步:调整Python代码以适配GAE要求

你的代码目前是一个普通的脚本,而GAE需要一个WSGI应用对象来处理请求,同时还有几个小问题需要修正:

#!/usr/bin/env python
import time
import httplib
import webapp2

runs = 5
count = 100

def serial_run():
    # 补充实际的目标主机地址,之前这里是空的
    target_host = "your-api-host.com"
    for x in range(0, runs):
        try:
            c = httplib.HTTPSConnection(target_host)
            json_payload = '{ "key1": ' + str(count) + '}'
            # 添加Content-Type头,确保服务器能识别JSON格式
            headers = {"Content-Type": "application/json"}
            c.request("POST", "/deploy", json_payload, headers)
            response = c.getresponse()
            data = response.read()
            print(data)
        except IOError as e:
            # Python 2.7推荐的异常捕获写法,替换旧的,语法
            print('Failed to connect to "%s": %s' % (target_host, str(e)))

class MainHandler(webapp2.RequestHandler):
    def get(self):
        start = time.time()
        serial_run()
        elapsed_time = time.time() - start
        self.response.write("Elapsed Time: %s seconds" % elapsed_time)

# 创建GAE需要的WSGI应用对象
app = webapp2.WSGIApplication([
    ('/', MainHandler),
], debug=True)

第三步:验证部署

修改完成后,重新运行dev_appserver.py命令,比如:

dev_appserver.py ./

访问http://localhost:8080就能触发你的串行请求逻辑了。

内容的提问来源于stack exchange,提问作者Titiano

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 07:05:43