Amplificare la configurazione personalizzata di errore su iOS Swift

0

Domanda

Sto cercando di integrare Amplificare al mio progetto, ma sto avendo alcuni problemi con la configurazione. Il backend è l'invio di S3 configurazione di Archiviazione per il mio progetto quindi devo configurare Amplificare con i dati ricevuti. Ho provato a configurare l'archiviazione a seguito di questo test, ma Si è verificato il seguente errore:

PluginError: Unable to decode configuration
Recovery suggestion: Make sure the plugin configuration is JSONValue
  ▿ pluginConfigurationError : 3 elements
    - .0 : "Unable to decode configuration"
    - .1 : "Make sure the plugin configuration is JSONValue"
    - .2 : nil

Questo è il mio codice:

func amplifyConfigure() {        
        do {
            Amplify.Logging.logLevel = .verbose
            
            try Amplify.add(plugin: AWSCognitoAuthPlugin())
            try Amplify.add(plugin: AWSS3StoragePlugin())

            let storageConfiguration = StorageCategoryConfiguration(
                        plugins: [
                            "awsS3StoragePlugin": [
                                "bucket": "bucket",
                                "region": "us-west-2",
                                "defaultAccessLevel": "protected"
                            ]
                        ]
                    )
            
            let amplifyConfiguration = AmplifyConfiguration(storage: storageConfiguration)
            try Amplify.configure(amplifyConfiguration)
            
            // LOG success.
        } catch {
            // LOG Error.
        }
    }

Qualcuno mi può aiutare con questa configurazione personalizzata? Grazie!

1

Migliore risposta

0

Sembra che la config non possono essere dichiarate direttamente in una sola volta per qualche motivo, forse il modello. Per me funziona, se lo dichiaro in più passaggi. Provare a sostituire questo:

let storageConfiguration = StorageCategoryConfiguration(
                        plugins: [
                            "awsS3StoragePlugin": [
                                "bucket": "bucket",
                                "region": "us-west-2",
                                "defaultAccessLevel": "protected"
                            ]
                        ]
                    )

con questo:

var storageConfigurationJson : [String:JSONValue] = [ "awsS3StoragePlugin" : [] ]
storageConfigurationJson["awsS3StoragePlugin"] = ["bucket": "bucket",
                                                  "region": "us-west-2",
                                                  "defaultAccessLevel": "protected"]
let storageConfiguration = StorageCategoryConfiguration(plugins: storageConfigurationJson)

L'ho usata solo Amplificare config con AuthCategoryConfigurationperché nel caso in cui StorageCategoryConfiguration ha una sintassi diversa, potrebbe essere necessario regolare la mia proposta di codice di conseguenza.

2021-12-23 13:53:56

In altre lingue

Questa pagina è in altre lingue

Русский
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................