Swiftyinsta: Login berhenti berfungsi

Dibuat pada 23 Jul 2020  ·  12Komentar  ·  Sumber: TheM4hd1/SwiftyInsta

Otentikasi dengan cache atau melalui LoginWebViewController gagal dengan kesalahan:
" https://i.instagram.com/api/v1/accounts/current_user/.\nRespons tidak valid.\nPenangan pemrosesan mengembalikan nil .\n405"

bug

Komentar yang paling membantu

Terima kasih @alperalb , saya telah memperbarui kode di 2.3.3 .\
Harap diingat, bahwa SwiftyInsta tidak lagi dipertahankan secara aktif, jadi meskipun ini adalah perbaikan yang mudah, mungkin akan berhenti berfungsi di masa mendatang.

Semua 12 komentar

Ubah metode UsersHandler CurrentUser dari pos ke get

func current(delay: ClosedRange<Double>?, completionHandler: <strong i="6">@escaping</strong> (Result<User, Error>) -> Void) { guard let storage = handler.response?.storage else { return completionHandler(.failure(GenericError.custom("Invalid Otentikasi.Respons in APIHandler.respone`. Masuk lagi.")))
}
// biarkan tubuh = ["_uuid": handler.settings.device.deviceGuid.uuidString,
// "_uid": storage.dsUserId,
// "_csrftoken": penyimpanan.csrfToken]

    requests.request(User.self,
                     method: .get,
                     endpoint: Endpoint.Accounts.current,
                     //body: .parameters(body),
                     delay: delay,
                     process: { User(rawResponse: $0.user) },
                     completion: completionHandler)
}`

Ubah metode UsersHandler CurrentUser dari pos ke get

func current(delay: ClosedRange<Double>?, completionHandler: <strong i="7">@escaping</strong> (Result<User, Error>) -> Void) { guard let storage = handler.response?.storage else { return completionHandler(.failure(GenericError.custom("Invalid Otentikasi.Respons in APIHandler.respone`. Masuk lagi.")))
}
// biarkan tubuh = ["_uuid": handler.settings.device.deviceGuid.uuidString,
// "_uid": storage.dsUserId,
// "_csrftoken": penyimpanan.csrfToken]

    requests.request(User.self,
                     method: .get,
                     endpoint: Endpoint.Accounts.current,
                     //body: .parameters(body),
                     delay: delay,
                     process: { User(rawResponse: $0.user) },
                     completion: completionHandler)
}`

Saya mencobanya berdasarkan solusi Anda, tetapi sepertinya tidak berhasil

Ubah metode UsersHandler CurrentUser dari pos ke get
func current(delay: ClosedRange<Double>?, completionHandler: <strong i="8">@escaping</strong> (Result<User, Error>) -> Void) { guard let storage = handler.response?.storage else { return completionHandler(.failure(GenericError.custom("Invalid Otentikasi.Respons in APIHandler.respone`. Masuk lagi.")))
}
// biarkan tubuh = ["_uuid": handler.settings.device.deviceGuid.uuidString,
// "_uid": storage.dsUserId,
// "_csrftoken": penyimpanan.csrfToken]

    requests.request(User.self,
                     method: .get,
                     endpoint: Endpoint.Accounts.current,
                     //body: .parameters(body),
                     delay: delay,
                     process: { User(rawResponse: $0.user) },
                     completion: completionHandler)
}`

Saya mencobanya berdasarkan solusi Anda, tetapi sepertinya tidak berhasil

Yang ini bekerja untuk saya..
Jika Anda menggunakan pod, Anda mungkin perlu membangun kembali proyek, membersihkan semua terlebih dahulu (command-shift-K) atau membersihkan data turunan.
Baris yang diubah ada di file UserHandler.swift, mulai dari baris 13

Ubah metode UsersHandler CurrentUser dari pos ke get

func current(delay: ClosedRange<Double>?, completionHandler: <strong i="7">@escaping</strong> (Result<User, Error>) -> Void) { guard let storage = handler.response?.storage else { return completionHandler(.failure(GenericError.custom("Invalid Otentikasi.Respons in APIHandler.respone`. Masuk lagi.")))
}
// biarkan tubuh = ["_uuid": handler.settings.device.deviceGuid.uuidString,
// "_uid": storage.dsUserId,
// "_csrftoken": penyimpanan.csrfToken]

    requests.request(User.self,
                     method: .get,
                     endpoint: Endpoint.Accounts.current,
                     //body: .parameters(body),
                     delay: delay,
                     process: { User(rawResponse: $0.user) },
                     completion: completionHandler)
}`

Terima kasih @alperalb , bekerja untuk saya.

Ubah metode UsersHandler CurrentUser dari pos ke get
func current(delay: ClosedRange<Double>?, completionHandler: <strong i="9">@escaping</strong> (Result<User, Error>) -> Void) { guard let storage = handler.response?.storage else { return completionHandler(.failure(GenericError.custom("Invalid Otentikasi.Respons in APIHandler.respone`. Masuk lagi.")))
}
// biarkan tubuh = ["_uuid": handler.settings.device.deviceGuid.uuidString,
// "_uid": storage.dsUserId,
// "_csrftoken": penyimpanan.csrfToken]

    requests.request(User.self,
                     method: .get,
                     endpoint: Endpoint.Accounts.current,
                     //body: .parameters(body),
                     delay: delay,
                     process: { User(rawResponse: $0.user) },
                     completion: completionHandler)
}`

Saya mencobanya berdasarkan solusi Anda, tetapi sepertinya tidak berhasil

Yang ini bekerja untuk saya..
Jika Anda menggunakan pod, Anda mungkin perlu membangun kembali proyek, membersihkan semua terlebih dahulu (command-shift-K) atau membersihkan data turunan.
Baris yang diubah ada di file UserHandler.swift, mulai dari baris 13

Terima kasih, saya menghapus data turunan dan berfungsi normal.

Terima kasih @alperalb , saya telah memperbarui kode di 2.3.3 .\
Harap diingat, bahwa SwiftyInsta tidak lagi dipertahankan secara aktif, jadi meskipun ini adalah perbaikan yang mudah, mungkin akan berhenti berfungsi di masa mendatang.

Terima kasih untuk pembaruan yang cepat. Sangat menyedihkan bahwa itu tidak dipelihara secara aktif, karena ini adalah kerangka kerja Instagram cepat terbaik saat ini dan akan sia-sia membiarkannya mati.

@sbertix senang membantu dengan pemeliharaan. Dimana pengumumannya?

Harus menggunakan pod 'SwiftyInsta', :git => 'https://github.com/TheM4hd1/SwiftyInsta', :branch => 'master'

@sbertix adalah rilis yang ditandai?

Terima kasih untuk pembaruan yang cepat. Sangat menyedihkan bahwa itu tidak dipelihara secara aktif, karena ini adalah kerangka kerja Instagram cepat terbaik saat ini dan akan sia-sia membiarkannya mati.

Ada terlalu banyak "masalah" dengan implementasi saat ini, membutuhkan catatan yang benar-benar bersih ke depannya @biox86

Ketika saya menulis SwiftyInsta 2.0 , saya melakukannya sedemikian rupa sehingga masih "asli" dengan implementasi aslinya, yang pada dasarnya adalah porting.

Swift banyak berubah sejak saat itu dan banyak fitur yang tidak dapat ditambahkan ke basis kode, misalnya membatalkan permintaan, dukungan multi-penyimpanan untuk tanggapan otentikasi, nama pengguna dan otentikasi kata sandi yang berfungsi, Menggabungkan dukungan, otentikasi khusus, dll.

Jadi, saya memulai proyek baru menggunakan Swift modern, Swiftagram , lebih mudah digunakan dan mampu memperbaiki semua masalah di atas. Memulai dari awal benar-benar sebuah keharusan.

@sbertix senang membantu dengan pemeliharaan. Dimana pengumumannya?

Tidak ada pengumuman resmi. Saya akan mengingatkan orang sesekali ketika masalah baru dikirim.

Saat saya sedang mengerjakan Swiftagram , saya masih akan memperbaiki masalah kritis (seperti ini), tetapi saya tidak akan mendorong fitur atau peningkatan baru di sini (misalnya saya tidak akan mem- port BasicAuthenticator untuk login berbasis tampilan web yang berfungsi, atau fitur Combine -nya).

Jika Anda berinvestasi di SwiftyInsta , dan ingin berkontribusi melalui PR, dan menjaga ini tetap aktif, Anda dipersilahkan @mycroftcanner

Harus menggunakan pod 'SwiftyInsta', :git => 'https://github.com/TheM4hd1/SwiftyInsta', :branch => 'master'

@sbertix adalah rilis yang ditandai?

Ya. Semuanya ditandai dan versi pod diperbarui…
Saya tidak yakin mengapa itu akan melakukan itu.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

canaksoy picture canaksoy  ·  6Komentar

rmelnik7777 picture rmelnik7777  ·  19Komentar

reefer picture reefer  ·  18Komentar

sbertix picture sbertix  ·  27Komentar

effecttwins picture effecttwins  ·  16Komentar