如何在EC2中将AmazonAPI网关与我的自定义API连接

如何在EC2中将AmazonAPI网关与我的自定义API连接,api,rest,amazon-web-services,amazon-ec2,Api,Rest,Amazon Web Services,Amazon Ec2,我需要创建一个RESTful API以将Windows应用程序作为服务公开。我的第一步是创建一个返回字符串的简单RESTAPI,然后将其连接到AmazonAPI网关 我已经启动了一个Windows Server实例,安装了Node.js并创建了一个简单的API,如下所示: var express = require('express'); var app = express(); app.get('/test', function (req, res) { console.log

我需要创建一个RESTful API以将Windows应用程序作为服务公开。我的第一步是创建一个返回字符串的简单RESTAPI,然后将其连接到AmazonAPI网关

我已经启动了一个Windows Server实例,安装了Node.js并创建了一个简单的API,如下所示:

var express = require('express');
var app = express();

app.get('/test', function (req, res) {
       console.log( "response" );
       res.end( "response" );
});

var server = app.listen(8080, function () {

  var host = server.address().address;
  var port = server.address().port;

  console.log("Example app listening at http://%s:%s", host, port);
});
我在打开
http://localhost:8080/test
而且它工作得非常完美

问题是,现在我必须将它与AmazonAPI网关连接起来,但我还没有找到关于如何实现这一点的清晰文档。我必须使用“HTTP代理”选项(见下图),但如何获得“端点URL”?所有教程都想当然地认为我已经有了那个URL,但我没有

  • 转到ec2控制台
  • 寻找你的例子
  • 在中查找其公共ip
  • 确保其安全组具有正确的权限,否则您将无法与其连接
  • 在API网关中使用实例公共ip

  • 在生产环境中,使用更健壮的配置,但出于测试目的,您应该很好。

    当您使用http://:8080/testI在这里更改localhost时,这是否有效?在这种情况下,我会得到一个超时。端口已打开。您的实例是否在专用子网中?我如何知道该子网是否为专用子网?在EC2上运行此命令,并让我知道您得到了什么输出wget http://www.google.com http://www.google.com在将其粘贴到EC2中时,在http后有一个空格,请将其删除