Ios 解析服务器(aws)映像未检索

Ios 解析服务器(aws)映像未检索,ios,swift,amazon-web-services,parse-server,Ios,Swift,Amazon Web Services,Parse Server,我开始在mongolab和AWS中使用parse server,一切正常,但图像无法检索,我在某个地方读到需要设置“fileKey”。我尝试将其添加到AWS控制台,如下图所示。但它仍然不起作用?我是否做错了什么,是否还需要将其添加到IOS Swift项目中的appDelegate?我怎么做 理智的 更新:截至2016年3月9日太平洋标准时间下午12点,“”解决方案包含FILE_KEY环境属性,并由应用程序解析。因此,不需要执行下面的过程,但它对于将来需要进行的任何其他应用程序更新仍然有用/结束更

我开始在mongolab和AWS中使用parse server,一切正常,但图像无法检索,我在某个地方读到需要设置“fileKey”。我尝试将其添加到AWS控制台,如下图所示。但它仍然不起作用?我是否做错了什么,是否还需要将其添加到IOS Swift项目中的appDelegate?我怎么做

理智的

更新:截至2016年3月9日太平洋标准时间下午12点,“”解决方案包含FILE_KEY环境属性,并由应用程序解析。因此,不需要执行下面的过程,但它对于将来需要进行的任何其他应用程序更新仍然有用/结束更新

为了澄清您的问题,我假设您无法访问任何“遗留”解析文件(在迁移之前上载到您的应用程序),并且您在访问新上载的文件时遇到问题?如果是,请继续阅读

问题:无法检索在迁移到AWS Elastic Beanstalk上的解析服务器之前上载到应用程序的任何文件

问题:迁移的解析服务器无法检索旧文件(托管在解析拥有的S3存储桶上),原因是路径不正确,缺少解析文件密钥。例如,如果对与文件关联的对象执行简单的GET,则会得到以下结果:

“url”:

/invalid file key/
URL参数是缺少的成分,如果未提供文件密钥,解析服务器会将其作为默认占位符放置到位。在进行以下建议的更改后,相同的请求将返回正确的url,并将
/invalid file key/
替换为/actual file key/

要了解有关解析文件的更多信息,请参阅我在此处介绍的迁移前/迁移后解析文件

解决方案:在EB环境属性中设置文件密钥属性名称是正确的,但不幸的是,您需要在解析服务器上对index.js文件进行额外更改,以实际读取文件密钥属性。有两种方法可以更新解析服务器应用程序。Elastic Beanstalk控制台或使用Elastic Beanstalk CLI(EB CLI)。以下提供了两种解决方案:

将解析文件“文件密钥”添加到AWS Elastic Beanstalk上的现有解析服务器。

(控制台)使用AWS Elastic Beanstalk更新应用程序版本 管理控制台:

此解决方案包括下载解析服务器的现有EB应用程序版本(作为.zip归档文件),在本地修改index.js文件,将其压缩备份,最后将更改上载到与应用程序新版本相同的应用程序版本页面。 下载并编辑当前解析服务器EB应用程序版本:

  • 打开弹性豆茎控制台
  • 从区域列表中,选择包含要使用的应用程序的区域
  • 在Elastic Beanstalk控制台应用程序页面中,单击要向其添加新应用程序版本的应用程序的名称
  • 在导航窗格中,单击应用程序版本

  • 单击源代码下的.zip文件链接,在本地下载应用程序

  • 解压缩应用程序
  • 编辑应用程序根目录中的index.js文件,并添加以黄色突出显示的行。
  • 保存index.js文件
  • 压缩应用程序(注意仅压缩解压缩文件夹中的根对象,而不是包含对象的文件夹。)
上传新版本的Parse Server应用程序:

  • 在Parse Server应用程序的应用程序版本EB页面中,单击上载

  • 提供版本标签和说明,选择更新的.zip应用程序,然后单击上载

  • 这将在上一版本仍在运行时上载应用程序的“新版本”

部署新版本的Parse Server应用程序:

  • 选择新上载的版本并单击部署

  • 从下拉列表中选择您的环境,然后单击部署

最后一步: 添加FILE_KEY环境属性,如屏幕截图所示。单击应用

如果您遇到此解决方案的任何问题,请遵循以下EB部署说明:

(CLI)使用Elastic Beanstalk命令行界面():

此解决方案使用EB CLI下载、编辑和部署解析服务器应用程序的新版本

  • mkdir tmp应用程序文件夹
  • cd tmp应用程序文件夹
  • eb init(选择运行代码的区域、应用程序和环境)
  • eb实验室下载(从eb环境下载代码)
  • 对index.js文件进行必要的更改
  • eb部署(应用程序重建)
  • eb setenv FILE_KEY=(应用程序再次重建) 完成。
获取解析文件密钥: 可以从Parse.com控制台获取解析托管文件密钥。 登录Parse.com,选择你的应用程序并复制应用程序设置>安全和密钥下的“文件密钥”。 注意:Parse仅在“beta”仪表板中提供“文件密钥”


我知道对于一个简单的解决方案来说,这似乎是一个冗长的详细说明,但它也应该帮助其他需要在将来的Elastic Beanstalk环境中更新解析服务器应用程序的解析开发人员。例如,如果您想

,则在index.js文件中似乎缺少fileKey

从分析仪表板获取文件密钥

转到解析服务器的index.js文件并设置filekey值

var api=新的解析服务器({ databaseURI:databaseURI | |'mongodb://localhost:27017/de