Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- func setupAPI() {
- // using raw string
- do {
- let jsonDecoder = try JSONDecoder().decode([PDF].self, from: self.RawJSON.data(using: .utf8)!)
- self.PDFs = jsonDecoder
- DispatchQueue.main.async {
- self.pdftableView.reloadData()
- }
- } catch {
- print(error)
- }
- // if you want to use URL
- let semaphore = DispatchSemaphore(value: 0)
- let request = URLRequest(url: URL(string: "url")!, timeoutInterval: Double.infinity)
- let task = URLSession.shared.dataTask(with: request) { data, response, error in
- guard let data = data else {
- print(String(describing: error))
- semaphore.signal()
- return
- }
- do {
- let jsonDecoder = try JSONDecoder().decode([PDF].self, from: data)
- self.PDFs = jsonDecoder
- DispatchQueue.main.async {
- semaphore.signal()
- self.pdftableView.reloadData()
- }
- } catch {
- print(error)
- }
- semaphore.signal()
- }
- task.resume()
- semaphore.wait()
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement