У нас есть мобильное приложение, которое работает на Parse Server 2.8.4 и размещено на DigitalOcean
. Мы использовали файловый адаптер по умолчанию (GridStoreAdapter), и теперь мы хотим использовать Spaces от DigitalOcean. Это наш обновленный индексный файл:
var express = require('express');
var ParseServer = require('parse-server').ParseServer;
var ParseDashboard = require('parse-dashboard');
var path = require('path');
var S3Adapter = require('parse-server').S3Adapter;
var AWS = require("aws-sdk");
var databaseUri = process.env.DATABASE_URI || process.env.MONGODB_URI;
//Set Digital Ocean Spaces EndPoint
const spacesEndpoint = new AWS.Endpoint('fra1.digitaloceanspaces.com');
//Define S3 options
var s3Options = {
bucket: 'bucketName',
baseUrl: 'https://example.com',
region: 'fra1',
directAccess: true,
globalCacheControl: "public, max-age=31536000",
s3overrides: {
accessKeyId: 'accessKey',
secretAccessKey: ' secretAccessKey',
endpoint: spacesEndpoint
}
};
var s3Adapter = new S3Adapter(s3Options);
var api = new ParseServer({
databaseURI: databaseUri,
appId: process.env.APP_ID,
allowClientClassCreation: false,
masterKey: process.env.MASTER_KEY,
fileKey: 'fileKey',
serverURL: process.env.SERVER_URL,
publicServerURL: 'http://ip/parse',
filesAdapter: s3Adapter
});
Все отлично работает! Файлы хранятся и извлекаются правильно, кроме старых! Каждое изображение, которое было сохранено с помощью GridStoreAdapter, больше не может быть получено! Можно ли что-нибудь сделать, чтобы можно было просматривать как старые, так и новые файлы?