Mengikuti kode yang saya tulis dan saya mendapatkan respons di JSON juga, tetapi jenis JSON adalah "AnyObject" dan saya tidak dapat mengubahnya menjadi Array sehingga saya dapat menggunakannya.
Alamofire.request(.POST, "MY URL", parameters:parameters, encoding: .JSON) .responseJSON
{
(request, response, JSON, error) in
println(JSON?)
}
let data = JSONValue(JSON!)
. Lalu saya bisa mengekstraksi nilai seperti inidata["Id"]
. Dokumentasi SwiftyJSON memberikan contoh cara mengambil nilai-nilai tersebut dalam tipe yang diinginkan. Apa sebenarnya kesalahan yang Anda dapatkan?Jawaban:
Jawaban untuk Swift 2.0 Alamofire 3.0 seharusnya terlihat seperti ini:
https://github.com/Alamofire/Alamofire/blob/master/Documentation/Alamofire%203.0%20Migration%20Guide.md
UPDATE untuk Alamofire 4.0 dan Swift 3.0:
sumber
seperti disebutkan di atas Anda dapat menggunakan perpustakaan SwiftyJSON dan mendapatkan nilai-nilai Anda seperti yang saya lakukan di bawah ini
daftar produk json saya kembali dari skrip
keluaran:
sumber
Swift 3, Alamofire 4.4, dan SwiftyJSON:
Itu akan mem-parsing input JSON ini:
sumber
JSON()
konversi eksplisit : github.com/SwiftyJSON/Alamofire-SwiftyJSONSaya menemukan jawabannya di GitHub untuk Swift2
https://github.com/Alamofire/Alamofire/issues/641
sumber
Saya bukan ahli JSON atau ahli Swift, tetapi berikut ini bekerja untuk saya. :) Saya telah mengekstrak kode dari aplikasi saya saat ini, dan hanya mengubah "MyLog ke println", dan menjorok dengan spasi untuk membuatnya ditampilkan sebagai blok kode (mudah-mudahan saya tidak merusaknya).
Semoga ini membantu.
Edit:
Untuk referensi, inilah yang dikembalikan Script PHP saya:
sumber
cepat 3
sumber
Saya menemukan cara untuk mengubah response.result.value (di dalam penutupan Alamofire responseJSON) ke dalam format JSON yang saya gunakan di aplikasi saya.
Saya menggunakan Alamofire 3 dan Swift 2.2.
Berikut kode yang saya gunakan:
sumber
Saya biasanya menggunakan pustaka Gloss untuk membuat serial atau deserialize JSON di iOS. Misalnya, saya punya JSON yang terlihat seperti ini:
Pertama, saya memodelkan array JSON di Gloss struct:
Dan kemudian di Alamofire responseJSON, saya melakukan hal berikut ini:
Output dari kode di atas:
sumber
Cepat 5
API Alamofire
sumber
Ini dibangun dengan Xcode 10.1 dan Swift 4
Kombinasi sempurna "Alamofire" (4.8.1) dan "SwiftyJSON" (4.2.0). Pertama, Anda harus menginstal kedua pod
Respons server dalam format JSON:
Dalam hal ini saya ingin mencetak info "Host": "Host": "httpbin.org"
Tetap Tenang dan Senang Kode 😎
sumber
di swift 5 kita suka, Gunakan typealias untuk menyelesaikan. Typlealias tidak hanya digunakan untuk membersihkan kode.
sumber
sumber