为了帮助开发,我想启动一些需要从 appengine 开发服务器访问文件系统、执行环境等的程序。本质上,我想写:
if (SystemProperty.environment.value().equals(
SystemProperty.Environment.Value.Development)) {
doStuffICannotDoOnRealAppengineButShouldBeABleToDoOnMyMachine();
}
这可能吗?
我的目标是预览 AppEngine 发送的电子邮件。现在我可以将内容打印到 System.out,但我想将它们保存到文件中并启动浏览器,以便我的设计人员可以立即查看电子邮件内容。
最佳答案
嗯。我发现有多种方法可以实现此目的,而无需绕过 GAE 文件系统限制。
- 您可以提供一些带有电子邮件地址请求参数的调试调用,该参数将通过 Google's email API 发送特定电子邮件到指定的地址。无论如何,您可能希望看到它由电子邮件客户端“呈现”。
- 您可以使用 Google's cloud storage API 存储文件。这应该允许您放置一个可以通过 URL 显示的文件。如果您无法使用该 API,那么您当然可以使用 S3。
- 您可以使用 Google's URL fetch API 向本地服务器发出一些 HTTP post 请求。您甚至可以对本地主机端口 8100(或其他端口)执行此操作,然后运行 netcat 来接收电子邮件
nc -l 8100
。
希望这里有帮助。
关于java - 从 AppEngine Dev Server 运行任意 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12647213/