当我运行下面的函数时,返回值为 nil。
我该如何解决这个问题?
我试图在每种情况下都写一个 return,但出现以下错误。
** void 函数中出现意外的非 void 返回值 **
func getAccessToken() -> String? {
var returnedAccessToken: String?
var params: [String : String] = [:]
params["client_id"] = API_ACCESS.CLIENT_ID
params["client_secret"] = API_ACCESS.CLIENT_SECRET
params["grant_type"] = "client_credentials"
AF.request(API_ACCESS.OAUTH_URL, method: .post, parameters: params)
.responseJSON(completionHandler: { oAuthResponse in
switch oAuthResponse.result {
case .success(let res):
returnedAccessToken = JSON(res)["access_token"].stringValue
print("1.")
print(returnedAccessToken)
case .failure(_):
print("OAuth access - Abnormal response!")
}
})
print("2.")
print(returnedAccessToken)
return returnedAccessToken
}
结果:
2.
nil
1.
Optional("aslkdnfenfsd...")