- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建自定义凭证提供程序,以便我可以设置访问 key 、 key 、 token 和过期时间。但是我在上传文件时收到以下错误
[__NSCFString expiration]: unrecognized selector sent to instance
下面是我使用 Swift 2.2 创建的自定义类。我该如何解决这个问题?
import AWSS3
import AWSCore.AWSCredentialsProvider
class MYAWSCredentialProvider:AWSCredentials, AWSCredentialsProvider{
var bucketName:String!
var token:String!
var awsAccessKey: String!
var awsSecretKey: String!
var awsExpiration: NSDate?
var awsRegion:String!
static let sharedInstance = MYAWSCredentialProvider(accessKey: "", secretKey: "", sessionKey: "")
@objc func logins() -> AWSTask {
return AWSTask(result: token)
}
init(accessKey: String, secretKey: String, sessionKey: String?) {
super.init()
self.token = sessionKey
self.awsAccessKey = accessKey
self.awsSecretKey = secretKey
}
private static func sharedInstanceWith(accessKey: String, secretKey: String, sessionKey: String) -> MYAWSCredentialProvider {
let instance = MYAWSCredentialProvider.sharedInstance
instance.token = sessionKey
instance.awsAccessKey = accessKey
instance.awsSecretKey = secretKey
return instance
}
func updateAWSInfo (jsonString: JSON) {
awsAccessKey = jsonString["accessKey"].stringValue
awsSecretKey = jsonString["secretKey"].stringValue
bucketName = jsonString["bucketName"].stringValue
awsRegion = jsonString["region"].stringValue
token = jsonString["token"].stringValue
let expirationTime = jsonString["expirationTime"].stringValue
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "E MMM d HH:mm:ss 'UTC' YYYY"////Fri Sep 30 14:42:53 UTC 2016
let date = dateFormatter.dateFromString(expirationTime)
awsExpiration = date
let credentialsProvider = MYAWSCredentialProvider.sharedInstanceWith(awsSecretKey, secretKey: awsSecretKey, sessionKey: token)
let configuration = AWSServiceConfiguration(region:AWSRegionType.APSoutheast1, credentialsProvider:credentialsProvider)
configuration.maxRetryCount = 3;
AWSServiceManager.defaultServiceManager().defaultServiceConfiguration = configuration
}
@objc func credentials() -> AWSTask {
return AWSTask(result: token)
}
func invalidateCachedTemporaryCredentials(){
}
}
最佳答案
尝试将您的函数替换为以下内容。
@objc func credentials() -> AWSTask {
let credentials = AWSCredentials(accessKey: accessKey, secretKey: secretKey, sessionKey: sessionKey, expiration: nil)
return AWSTask(result: credentials)
}
关于swift - 自定义凭证提供程序问题 - Swift2.2、AWS 2.4.9、AWSCredentials AWSCredentialsProvider,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39795204/
我有从服务器生成的凭据和 token 。我使用了 AWSStaticCredentialsProvider,而我需要传递 token 以进行身份验证。 引用了很多链接,但除了凭据提供程序的自定义实
我正在编写一个 Java 应用程序,该应用程序使用 Spring 进行依赖项注入(inject),使用 AWS 提供各种服务。我将把应用程序部署到 EC2。我遇到的问题是在开发/部署期间以安全的方式设
我正在使用 2 个 Amazon 提供的库:redshift-jdbc42-1.2.27.1051 和 aws-java-sdk-core-1.11.600。这两个库都在包 com.amazonaws
我一直在使用 Beam 管道 examples作为尝试从 S3 为我的管道加载文件的指南。就像在示例中一样,我定义了自己的 PipelineOptions ,它也扩展了 S3Options我正在尝试使
我安装了适用于 java 的 AWS 工具包 并将其连接到我在构建路径中的项目,我尝试将文件上传到 S3。 File fileOfImages = new File("/sdcard/Save Ima
我正在创建自定义凭证提供程序,以便我可以设置访问 key 、 key 、 token 和过期时间。但是我在上传文件时收到以下错误 [__NSCFString expiration]: unrecogn
我是一名优秀的程序员,十分优秀!