2017-02-04 64 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 
    } 
) 

這個工作在這種情況下。

相關問題