从几乎静态的站点调用跨域请求

时间:2017-07-20 03:44:07

标签: amazon-web-services amazon-s3 vue.js google-cloud-platform google-cloud-endpoints

我使用vuejs,我几乎所做的一切都是在客户端,但是我需要调用服务器端来检查URL是否存在。

我不想从浏览器发出这些请求,因为从我的脚本中获取不同的网站是没有意义的,这更像是在没有用户知道背景的情况下调用任何不良网站,所以我需要调用cloud-function(gce)或aws lambda(因为我不想在服务器上托管该站点,因为它只有一个api调用)。

实现目标的最佳方式是什么,我正在寻找类似网站的内容www.webapp.com以及www.webapp.com/checkUrl上的云功能调用

1 个答案:

答案 0 :(得分:2)

如果您选择AWS平台,则可以使用S3,CloudFront,Route53,API Gateway和Lambda来实现您的目标。

<强> Step01

  • 创建一个S3存储桶并上传您的前端vueJs代码
  • 从S3属性启用静态虚拟主机到您的存储桶
  • 创建CloudFront分配
  • 创建指向您的s3存储桶网址的CloudFront原点(您必须添加s3存储桶的静态网站网址)
  • 设置指向S3 orgin ID的默认行为

第02步

  • 创建lambda函数

  • 创建API网关

  • 添加指向lambda的新资源(GET / POST)

  • 部署您的API

  • 返回CloudFront分配并添加指向API网关的原点

  • 在行为标签中,创建一个新行为,例如:(/checkUrl)并将其指向API网关的OriginId

第03步

  • 转到Route53并创建一个新的托管区域
  • 在域配置中设置托管区域的NS记录
  • 创建新记录集(例如:www.webapp.com)并将其指向CloudFront分配的DNS
  • 将您的CloudFront分配的备用域名更新为www.webapp.com
相关问题