私は何の認証もなしに公開ウェブサーバーからJPGファイルを取得しようとしています。私は403エラーを取得しています https://drscdn.500px.org/photo/36406120/m%3D900_k%3D1_a%3D1/v2?client_application_id=29771&webp=true&sig=97ac488f1336f41d9f3e4a67e6bf99b3bd1aadfb6c9631a6097ff5b4a729a94eAlamoFire 4.XのURLエンコーディング
let url = URL(string: urlString)
let myParameters: [String : AnyObject] = ["myImage": image, "myBlurredImage": blurredImage, "index": index as AnyObject]
let croppedSize = CGSize(width: self.scrollViewWidth!, height: self.scrollViewHeight!)
self.apicounterPerRequest += 1
Alamofire.request(url!, method: .get, parameters: myParameters, encoding: URLEncoding.default)
.validate()
.response { response in
let myImage = myParameters["myImage"] as! UIImageView
let myBlurredImage = myParameters["myBlurredImage"] as! UIImageView
let index = myParameters["index"] as! Int
if let downloadedImage = UIImage(data: response.data!) {
myImage.image = downloadedImage
self.displayed500PxPhoto[index].uiimage = downloadedImage
myBlurredImage.image = PhotoManager.imageWithSize(downloadedImage, size: croppedSize)
completion({
print("Done Downloading")
})
} else {
print("Error : \(response.data)")
}
if response.error != nil {
print(response.error!)
self.showAlert("One or more photos could not be downloaded. Please try again.")
completion({
throw response.error!
})
}
}
:
Error : Optional(409 bytes)
responseValidationFailed(Alamofire.AFError.ResponseValidationFailureReason.unacceptableStatusCode(403))
私がそこにあるかなり確信してコーディングをurlStringが値を以下ましたAlamoFire 4.4
とスウィフト3で行われます上に掲載されたURLの予約文字にエンコード問題がありますが、AlamoFireにエンコード方法を正しく伝える方法をまだ理解できませんでした。どんな手がかりも高く評価されています。ご協力ありがとうございました。
場合(名前を指定したくない場合に使用)返されるパラメータを意味し、私はあなたが使用している気づく - エンコーディングを:URLEncoding.defaultあなたは、クエリ文字列にパラメータを渡していることを意味します。入力したクエリ文字列にパラメータを手動で追加し、その結果を確認できますか? –