代码之家  ›  专栏  ›  技术社区  ›  Pranavan SP

如何为awsservicemanager设置多个区域以使用lex、rek、s3 swift

  •  0
  • Pranavan SP  · 技术社区  · 7 年前

    我无法为aws服务管理器设置多个区域。 (为什么是多区域?因为s3,重新命名->apsoutheast2,lex->uswest1.)

    当我使用面部识别时,其他莱克斯总是在apsoutheast2区域工作。检查下图。它似乎只能设置一次默认值。如何针对不同的使用目的进行设置。

    注:信息列表配置也不在这里。提前谢谢。

    enter image description here

    1 回复  |  直到 7 年前
        1
  •  0
  •   Karthikeyan    7 年前

    您可以按如下方式创建相应的服务客户端:

    S3类:

    let serviceConfiguration = AWSServiceConfiguration(
                region: .APSoutheast2,
                credentialsProvider: AWSCognitoCredentialsProvider(regionType: .APSoutheast2, identityPoolId: "YourIdentityPoolId")
            )
    
            let transferUtilityConfiguration = AWSS3TransferUtilityConfiguration()
            transferUtilityConfiguration.isAccelerateModeEnabled = true
    
            AWSS3TransferUtility.register(
                with: serviceConfiguration!,
                transferUtilityConfiguration: transferUtilityConfiguration,
                forKey: "transfer")
    

    回复:

    let serviceConfiguration = AWSServiceConfiguration(
                    region: .APSoutheast2,
                    credentialsProvider: AWSCognitoCredentialsProvider(regionType: .APSoutheast2, identityPoolId: "YourIdentityPoolId")
                )
    
    AWSRekognition.register(with: serviceConfiguration!, forKey: "my-rekognition-client")
    

    莱克斯:

    let serviceConfiguration = AWSServiceConfiguration(
                        region: .USWest1,
                        credentialsProvider: AWSCognitoCredentialsProvider(regionType: .USWest1, identityPoolId: "YourIdentityPoolId")
                    )
    
        AWSLex.register(with: serviceConfiguration!, forKey: "my-lex-client")