我试图通过我的应用程序将我的锻炼上传到strava &当我发送请求时,它会将错误400返回给我,如下所示:
(字符串?) $R0 =“{\”消息\:\“坏请求\”,\“错误\”:{\“资源\”:\“上载\”,\“字段\”:\“文件”,\“代码\”:\“不是文件\”}“
我能够毫无问题地将我的应用程序连接到strava上。以下是我迄今所做的工作:
func saveWorkout(_ workout: FirebaseWorkout, completion: @escaping (_ success: Bool, _ error: Error?) -> Void) {
let opts: [String: Any?] = [
"file": nil,
"name": workout.name
"description": nil,
"trainer": false,
"commute": false,
"dataType": ".gpx",
"externalId": workout.key
]
if self.isAuthorized && userSettings.membership.hasFullAccess {
workoutLib().analyticsEvent(kEventCategoryThirdParty, eventAction: "SAVE_WORKOUT", eventLabel: ThirdPartyApplication.strava.rawValue, eventValue: 1)
workoutLib().debugLog("Strava: Save Workout")
self.refreshTokenIfNeeded {
_ = self.oauthswift.client.post("https://www.strava.com/api/v3/uploads", parameters: opts as OAuthSwift.Parameters, success: { (_) in
workoutLib().debugLog("Strava: Save Workout Success")
completion(true, nil)
}) { (error) in
workoutLib().debugLog("Strava: Save Workout \(error.localizedDescription)")
completion(false, error)
}
}
} else {
completion(false, nil)
}
}发布于 2019-05-14 21:19:54
从Strava文档(https://developers.strava.com/docs/uploads/)中,file字段是必需的,看起来您已经将其设置为nil。这可能是它返回not a file的原因,因为没有文件通过。
https://stackoverflow.com/questions/55343998
复制相似问题