Questions tagged «google-app-engine»

Google App Engine是一种云计算技术,用于在Google管理的数据中心内托管Web应用程序。Google App Engine是一种平台即服务(PaaS)产品,在其标准环境中适用于Java,Python,Go,Node.js和PHP。在其灵活的环境中,支持其他几种语言的运行时以及基于docker的自定义运行时。

13
在GAE上解析完全有效的XML时,“序言中不允许内容”
在过去的48个小时里,我一直对这个绝对令人毛骨悚然的bug感到震惊,所以我想我最终会把毛巾扔掉,尝试在这里问一下,然后再将笔记本电脑扔出窗户。 我正在尝试从对AWS SimpleDB的调用中解析响应XML。响应恢复正常。例如,它可能看起来像: <?xml version="1.0" encoding="utf-8"?> <ListDomainsResponse xmlns="http://sdb.amazonaws.com/doc/2009-04-15/"> <ListDomainsResult> <DomainName>Audio</DomainName> <DomainName>Course</DomainName> <DomainName>DocumentContents</DomainName> <DomainName>LectureSet</DomainName> <DomainName>MetaData</DomainName> <DomainName>Professors</DomainName> <DomainName>Tag</DomainName> </ListDomainsResult> <ResponseMetadata> <RequestId>42330b4a-e134-6aec-e62a-5869ac2b4575</RequestId> <BoxUsage>0.0000071759</BoxUsage> </ResponseMetadata> </ListDomainsResponse> 我将此XML传递给解析器 XMLEventReader eventReader = xmlInputFactory.createXMLEventReader(response.getContent()); 并打电话eventReader.nextEvent();多次以获得我想要的数据。 这是奇怪的部分-它在本地服务器中很好用。我解析了响应,每个人都很高兴。问题是,当我将代码部署到Google App Engine时,传出请求仍然有效,并且响应XML对我来说似乎100%相同且正确,但是响应无法解析,但出现以下异常: com.amazonaws.http.HttpClient handleResponse: Unable to unmarshall response (ParseError at [row,col]:[1,1] Message: Content is not allowed in prolog.): <?xml version="1.0" encoding="utf-8"?> …


6
Google App Engine Flexible环境的定价,一堂$ 500的课程
我遵循了App Engine Flexible env教程@上的Nodejs:https://cloud.google.com/nodejs/getting-started/hello-world 成功部署并测试了本教程后,我将代码进行了一些实验,然后成功部署了它……然后将其运行,因为这是一个测试环境(非公开)。 一个月后,我收到了Google的一笔账单,金额超过370美元! 在交易明细中,我看到以下内容: 2017年10月1日至31日,App Engine Flex实例RAM:5948.774 Gibibyte-hours([MYPROJECT])$ 42.24 2017年10月1日至31日,App Engine Flex实例的核心小时数:5948.774小时([MYPROJECT])$ 312.91 这个几乎有0个请求的测试环境如何需要约6,000个小时的资源?在最坏的情况下,我会假设一个月有720个小时的全职工作,每小时$ 0.05,那么我要花$ 40左右。 https://cloud.google.com/appengine/pricing 有人可以帮助阐明这一点吗?我无法找出为什么需要这么多资源? 谢谢您的帮助! 要获取更多数据,请查看上个月的流量(基本上为0): 和实例数据 更新:请注意,我确实对package.json进行了修改:我将nodemon添加为依赖项,并将其添加为“ nmp start”脚本的一部分。尽管我怀疑这解释了6000个小时的资源: "scripts": { "deploy": "gcloud app deploy", "start": "nodemon app.js", "dev": "nodemon app js", "lint": "samples lint", "pretest": "npm run lint", "system-test": "samples test …

12
如何在Python中使用正则表达式验证URL?
我正在Google App Engine上构建应用程序。我是Python的新手,在过去3天里,我一直对下面的问题problem之以鼻。 我有一个表示RSS Feed的类,在这个类中,我有一个名为setUrl的方法。输入此方法的是URL。 我正在尝试使用re python模块来验证RFC 3986 Reg-ex(http://www.ietf.org/rfc/rfc3986.txt) 下面是一个片段,哪个应该工作? p = re.compile('^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?') m = p.match(url) if m: self.url = url return url

13
使用app.yaml将环境变量安全地存储在GAE中
我需要将API密钥和其他敏感信息存储app.yaml为环境变量,以便在GAE上进行部署。问题是如果我推app.yaml送到GitHub,此信息将公开(不好)。我不想将信息存储在数据存储中,因为它不适合该项目。相反,我想换出.gitignore应用程序每次部署中列出的文件中的值。 这是我的app.yaml文件: application: myapp version: 3 runtime: python27 api_version: 1 threadsafe: true libraries: - name: webapp2 version: latest - name: jinja2 version: latest handlers: - url: /static static_dir: static - url: /.* script: main.application login: required secure: always # auth_fail_action: unauthorized env_variables: CLIENT_ID: ${CLIENT_ID} CLIENT_SECRET: ${CLIENT_SECRET} ORG: ${ORG} ACCESS_TOKEN: ${ACCESS_TOKEN} …


7
解析yaml文件时出错:此处不允许使用映射值
我想将应用上传到Google App Engine: 我明白了 Error parsing yaml file: mapping values are not allowed here in "/home/antonio/Desktop/ATI/climate-change/app.yaml", line 2, column 8 跑步时 ./appcfg.py update /home/antonio/Desktop/ATI/climate-change 与此app.yaml文件: application:climate-change version: 1 runtime: python27 api_version: 1 threadsafe: true handlers: - url: /.* script: helloworld.app 第2行,第8列对应于版本行。怎么了 顺便说一句,我在这里使用Ubuntu 12.04。

1
Google App引擎或亚马逊网络服务[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或进一步的讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我是我们云托管的新手。我想知道从Google App引擎还是Amazon Web服务开始哪个更好。 我的问题是: 我的应用程序基于Java,数据库为MySQL。他们支持吗? 两家公司都有哪些免费优惠,哪一种更好呢? 从一个平台迁移到另一个平台有多容易? 我是新手,因此可以很好地开始使用这些服务。 另外,由于我是这里的新手,所以希望能获得一些很好的链接来开始使用这些服务,并从较高的角度了解其工作原理。

8
为什么要在Google App Engine上使用Django?
在研究Google App Engine(GAE)时,很明显,使用Django在基于GAE的Python中进行开发非常流行。我一直在网上搜索有关使用Django的成本和收益的信息,以了解为什么它如此受欢迎。虽然我已经找到了许多有关如何在GAE 上运行Django的资料以及各种实现方法,但是我还没有找到任何比较分析来说明为什么 Django比使用Google提供的webapp框架更可取。 显而易见,对于在Django中具有现有技能的开发人员(毫无疑问是大多数Python网络开发人员)或在Django中具有现有代码的开发人员(在其中使用GAE更像是移植练习),为什么在GAE上使用Django很有用。但是,我的团队正在评估GAE是否可用于全新项目,而我们现有的经验是使用TurboGears,而不是Django。 当BigTable库已替换Django的ORM,会话和身份验证已更改且Django的模板(如果需要)而无需使用整个Django堆栈时,很难确定Django为什么对开发团队有利。 最后,很明显,如果我们以后想离开GAE并需要一个平台来出走,使用Django确实具有提供“退出策略”的优势。 我会非常感谢您指出为什么在GAE上使用Django比使用webapp更好的方法。我也对Django完全没有经验,因此详细介绍适用于GAE的较小功能和/或便利性对我来说也很有价值。

7
什么时候应使用以下各项:Amazon EC2,Google App Engine,Microsoft Azure和Salesforce.com?
我是从很一般的意义上问这个问题。从云提供商和云消费者的角度来看。同样,问题也不是针对任何特定类型的应用程序(事实上,其目的是要知道哪种类型的应用程序/域可以适合哪个云平台-SaaS PaaS IaaS)。 到目前为止,我的理解是: IaaS:原始硬件(处理器,网络,存储)。 PaaS:操作系统,系统软件,开发框架,虚拟机。 SaaS:软件应用程序。 如果Stackoverflower可以分享他们对云计算概念的理解和经验,那将是很棒的。 编辑:好的,我将以更具体的方式进行介绍- Amazon EC2:您无法控制硬件层。但是您可以选择OS映像,Dev Framework(.NET,J2EE,LAMP)和Application,然后将其放在EC2硬件上。您可以在EC2上部署使用Google App Engine或Azure构建的应用程序吗? Google App Engine:您无法控制硬件和操作系统,并且获得了用于构建应用程序的特定开发框架。您可以使用任何现有的Java或Python应用程序并将其移植到GAE吗?反之亦然,是否可以将基于GAE构建的应用程序从GAE中取出并移植到Websphere或Weblogic等任何Application Server? Azure:您无法控制硬件和操作系统,并且获得了用于构建应用程序的特定开发框架。您可以使用任何现有的.NET应用程序并将其移植到Azure吗?反之亦然,是否可以将在Azure上构建的应用程序从Azure中取出并移植到诸如Biztalk的任何应用程序服务器上?

5
使用标准库可以在Go中嵌套模板吗?
如何在python运行时中获取类似于Jinja的嵌套模板。TBC的意思是,我如何从基本模板继承一堆模板,就像Jinja / django-templates一样,以基本模板的块形式进行归档。是否可以仅html/template在标准库中使用。 如果那是不可能的,那我有什么选择。胡子似乎是一种选择,但是我会不会错过那些html/template诸如上下文相关的转义等漂亮的微妙功能?还有什么其他选择? (环境:Google App Engin,Go runtime v1,Dev-Mac OSx lion) 谢谢阅读。

5
Python是否具有等效的toString(),并且可以将db.Model元素转换为String吗?
我正在编写一个ToDo列表应用程序,以帮助自己开始使用Python。该应用程序在GAE上运行,我将待办事项存储在数据存储区中。我想向他们展示每个人的物品,并且只向他们展示。问题在于该应用程序当前向所有用户显示所有项目,因此我可以看到您写的内容,也可以看到我写的内容。我以为将我的todo.author对象转换为字符串并查看它是否与用户名匹配是一个不错的开始,但是我不知道该怎么做。 这就是我的main.py中的内容 ... user = users.get_current_user() if user: nickname = user.nickname() todos = Todo.all() template_values = {'nickname':nickname, 'todos':todos} ... def post(self): todo = Todo() todo.author = users.get_current_user() todo.item = self.request.get("item") todo.completed = False todo.put() self.redirect('/') 在我的index.html中,我原来是这样的: <input type="text" name="item" class="form-prop" placeholder="What needs to be done?" required/> ... <ul> {% for …

14
Google App Engine模型的JSON序列化
我已经搜索了很长时间,但没有成功。我的项目未使用Django,是否有一种简单的方法可以将App Engine模型(google.appengine.ext.db.Model)序列化为JSON,还是需要编写自己的序列化程序? 模型: class Photo(db.Model): filename = db.StringProperty() title = db.StringProperty() description = db.StringProperty(multiline=True) date_taken = db.DateTimeProperty() date_uploaded = db.DateTimeProperty(auto_now_add=True) album = db.ReferenceProperty(Album, collection_name='photo')

7
将字节数组转换为字符串(Java)
我正在用Google App Engine编写一个Web应用程序。它允许人们从根本上编辑html代码,这些代码作为.html文件存储在blobstore中。 我正在使用fetchData返回byte[]文件中所有字符中的一个。我正在尝试打印到html,以便用户编辑html代码。一切正常! 现在这是我唯一的问题: 转换回字符串时,字节数组存在一些问题。智能引号和几个字符看上去很时髦。(?或日语符号等。)具体来说,我看到的是几个字节,它们的负值导致了问题。 智能引号赶回来,-108和-109字节数组英寸 为什么会这样,如何解码负字节以显示正确的字符编码?

17
java.lang.ClassNotFoundException:com.sun.jersey.spi.container.servlet.ServletContainer
我正在尝试使用Jersey + Google应用引擎构建一个简单的hello world应用程序,为期两天。对于简单的AppEngine项目,我遵循了这些教程,并且都可以正常使用 https://developers.google.com/appengine/docs/java/gettingstarted/创建 https://developers.google.com/appengine/docs/java/webtoolsplatform 但是现在我试图添加Jersey并遵循本教程http://www.vogella.com/articles/REST/article.html。 但是服务器一直在给我 java.lang.ClassNotFoundException:com.sun.jersey.spi.container.servlet.ServletContainer 当我在web.xml中添加这些行时: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>TestServer</display-name> <servlet> <servlet-name>Jersey REST Service</servlet-name> <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class> <init-param> <param-name>com.sun.jersey.config.property.packages</param-name> <param-value>com.test.myproject</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Jersey REST Service</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping> </web-app> 我JAX-RS 2.1 RI bundle从这里下载了Jersey ,并WEB-INF/lib按照教程中的说明将所有jar文件添加到了文件夹中。即使经过两天,也没有任何效果。我已经在Google上搜索过几次,显然使用Maven的人已经以某种方式解决了它,但是我没有使用Maven,编写该教程的人也没有。 只是为了检查com.sun.jersey.spi.container.servlet.ServletContainer导入中是否存在, Jersey jars我试图用Java编写这个完全限定的名称,并让intellisense完成名称,但是之后我却没有得到任何intellisense,com.sun.je所以我的最后猜测是在最新的Jersey版本中进行了一些软件包重新排列而jersey不再是内部的com.sun。我筋疲力尽,我将不胜感激。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.