2017-02-04 60 views
0

我想设置S3文件适配器,但我不知道如果我得到格式的东西不正确或什么的东西。我跟了这:解析服务器S3文件适配器与Heroku应用

https://github.com/ParsePlatform/parse-server/wiki/Configuring-File-Adapters#configuring-s3adapter

指南准确,但是当我去掉下面的代码块,并把我的AWS凭据然后按设置回Heroku的应用程序或仪表板不会将任何再启动,说有一个应用程序错误:

//**** File Storage ****// 
filesAdapter: new S3Adapter(
    { 
    "xxxxxxxx", 
    "xxxxxxxx", 
    "xxxxxxxx", 
    {directAccess: true} 
    } 
) 

回答

2

我将它设置为Heroku的如下:

确保执行指南中描述的所有步骤后,你的政策类似于此:

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
     { 
      "Effect": "Allow", 
      "Action": [ 
       "s3:*" 
      ], 
      "Resource": [ 
       "arn:aws:s3:::BUCKET_NAME", 
       "arn:aws:s3:::BUCKET_NAME/*" 
      ] 
     } 
    ] 
} 

现在将此策略应用于存储桶:在S3控制台中选择存储桶,然后点击右上角的“属性”按钮。展开“权限”部分,按下“编辑存储桶政策”,然后在文本字段中粘贴上面的json。

enter image description here

配置解析服务器在index.js文件:

var S3Adapter = require('parse-server').S3Adapter; 
var s3Adapter = new S3Adapter(
    "AWS_KEY", 
    "AWS_SECRET_KEY", 
    "bucket-name", 
    { directAccess: true } 
); 

,并增加两行解析服务器的init(var api = new ParseServer({..})):

filesAdapter: s3Adapter, 
fileKey: process.env.PARSE_FILE_KEY 
+0

感谢发布队友。 Id遵循所有安装指南,但使用了process.env。为环境变量。我使用了我在GitHub上找到的东西,并从directAccess var中删除了大括号,它似乎正在工作(此刻) – Pippo

+0

您是否看到过有关设置mailgun的指南? https://github.com/ParsePlatform/parse-server-simple-mailgun-adapter是一个裸露的骨头 – Pippo

1

崖的职位相似。 S3Adapter必须位于()外部()

var S3Adapter = require('parse-server').S3Adapter; 

然后里面解析服务器初始化:

filesAdapter: new S3Adapter(
    { 
    accessKey: process.env.S3_ACCESS_KEY || '', 
    secretKey: process.env.S3_SECRET_KEY || '', 
    bucket: process.env.S3_BUCKET || '', 
    directAccess: true 
    } 
) 

这个工作在这种情况下。

相关问题