コードをswift2バージョンからswift3バージョンに移行しようとしています。次のコード部分を移行できず、解決策が見つかりませんでした。どうすればいいですか?
//マーク:URLRequestConvertible
public var URLRequest: NSMutableURLRequest {
let urlComponent = NSURLComponents(string: Router.baseURL)!
urlComponent.path = Router.basePath.stringByAppendingString(path)
let mutableURLRequest = NSMutableURLRequest(URL: urlComponent.URL!)
mutableURLRequest.HTTPMethod = method.rawValue
var parameters: [String: AnyObject] = Dictionary()
parameters["key"] = Router.key
parameters["hl"] = "en"
switch self {
case .getMostPopularVideos(let pageToken):
parameters["part"] = "snippet,contentDetails,statistics"
parameters["chart"] = "mostPopular"
parameters["videoCategoryId"] = TubeTrends.Settings.topTrendsCat
if let pageToken = pageToken {
parameters["pageToken"] = pageToken
}
return Alamofire.ParameterEncoding.URL.encode(mutableURLRequest, parameters: parameters).0 //This part Giving Error like Alamofire Type 'ParameterEncoding' has no member 'URL'
// default:
// return mutableURLRequest
}
}
}
この計算されたプロパティの名前を、たとえば、request
に変更して、新しいタイプ名との衝突を回避しURLRequest
ます。偶然にも、この計算されたプロパティは次のタイプを使用する必要がありますURLRequest
。
public var request: URLRequest {
let url = URL(string: Router.baseURL)!
.appendingPathComponent(Router.basePath)
.appendingPathComponent(path)
var request = URLRequest(url: url)
request.httpMethod = method.rawValue
var parameters = [String: Any]()
parameters["key"] = Router.key
parameters["hl"] = "en"
switch self {
case .getMostPopularVideos(let pageToken):
parameters["part"] = "snippet,contentDetails,statistics"
parameters["chart"] = "mostPopular"
parameters["videoCategoryId"] = TubeTrends.Settings.topTrendsCat
if let pageToken = pageToken {
parameters["pageToken"] = pageToken
}
return try! Alamofire.URLEncoding.default.encode(request, with: parameters)
}
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加