让Google Cloud SDK站点联机

时间:2017-01-12 04:58:20

标签: python html google-app-engine

所以我一直在关注Udacity的Web开发课程(CS253),我设法跟进,直到第2课的问题集。教师基本上告诉你创建一个网站,使用ROT13转换用户在HTML表单中提供的输入(例如,Hello变为Urryb。https://www.youtube.com/watch?v=uMGNwoFHfB4这是Youtube视频,如果有帮助的话)。现在的问题是,我设法创建了转换输入的函数,我创建了网站的布局,但我无法弄清楚如何获取用户在HTML表单中提供的输入并将其存储在一个变量,以便我可以转换它。因为我使用Python,我检查了论坛,发现我必须使用一个名为CGI的东西。我尝试使用它,但我的网站是本地托管的(我通过浏览器上的localhost访问它),发布回答的人说该网站应该在线托管。我的问题是,我如何将网站上线?我已经在免费主机(Hostinger)上托管了另一个网站,但它只使用HTML和CSS,而不需要Google Cloud SDK。要启动Google Cloud网站,我必须打开CMD,导航到我的main.py所在的文件夹,然后输入“dev_appserver.py app.yaml”。我如何在主机上执行此操作?此外,如何在主机上安装Google Cloud SDK?如果它有帮助,这是我的MainPage处理程序:

class MainPage(webapp2.RequestHandler):
def get(self):
    self.response.write('''
    <h1>ROT13 Generator</h1>
    <form  method="post">
        <input type="text" name="htmlUserInput" size="30" >
    </form>
        ''');

def post(self):
    form =cgi.FieldStorage(); # equals to none
    userInput=form.getvalue('htmlUserInput'); # equals to none

1 个答案:

答案 0 :(得分:2)

我建议您浏览Guestbook tutorial

它将explain what to put in app.yaml and your main WSGI script

然后它会显示如何deploy to Google Cloud

我建议不要直接跳到部署部分,因为您需要在其他步骤中创建文件。

您至少需要expected 5 columns but found 6之类的:

app.yaml

用您的Python文件名替换libraries: - name: webapp2 version: latest handlers: - url: /.* script: python_script_file_name.app

您应该将以下代码添加到Python代码中:

python_script_file_name

如果您进一步扩展此网站并将其置于“生产”中,您将需要使用app = webapp2.WSGIApplication([ ('/', MainPage), ], debug=True)