Estou tentando usar o Swift para fazer uma chamada GET para uma API REST e tentei seguir vários tutoriais, mas não consigo descobrir. Ou porque eu não consigo descobrir como traduzir todos os Obj-C para Swift, ou porque metade dos métodos e tais estão obsoletos. Alguém sabe como fazer a chamada e analisar os dados JSON retornados?
92
Respostas:
Você pode fazer assim:
fonte
Swift 5 e 4
fonte
Acho que a
NSURLSession
api se encaixa melhor nessa situação. Porque se você escrever código rápido, o alvo do projeto é pelo menos iOS 7 e iOS 7 suportaNSURLSession
API. Enfim, aqui está o códigofonte
// Handle result
pode ser:let resp = String( data:data!, encoding:NSUTF8StringEncoding)!
NSURLSessionConfiguration
. Acho que essa deve ser a resposta aceita.Aqui está o código completo para solicitações REST API usando NSURLSession em swift
Para solicitação POST ...
Eu espero que dê certo.
fonte
editado para swift 2
fonte
Swift 4 - solicitação GET
Não se esqueça de definir as configurações de segurança de transporte do aplicativo para adicionar seu domínio às exceções e permitir solicitações http inseguras se você estiver acessando endpoints sem usar HTTPS.
Você pode usar uma ferramenta como http://www.json4swift.com/ para gerar automaticamente seus mapeamentos codificáveis a partir de suas respostas JSON.
fonte
Swift 3.0
fonte
Swift 4
Crie um aplicativo usando o método Alamofire com Api Post
Instale o arquivo pod -pod 'Alamofire', '~> 4.0' para Swift 3 com Xcode 9
Crie a classe Webservices.swift, importe Alamofire
Projetar storyBoard, visualização de login
insira o seguinte código para o ViewControllerClass
Insira o seguinte código para WebserviceClass
fonte
No swift 3.3 e 4. Criei a classe APIManager com dois métodos públicos. Basta passar o parâmetro obrigatório, o nome da API e o tipo de solicitação. Você receberá uma resposta e, em seguida, passará para o fechamento.
fonte
rápido 4
USE ALAMOFIRE em nosso arquivo de pod de instalação do App plz
pod 'Alamofire', '~> 4.0'
Podemos usar API para dados Json - https://swapi.co/api/people/
Então, podemos criar uma classe de rede para Nosso projeto - networkingService.swift
Em seguida, crie a classe NetworkingError.swift
Em seguida, crie a classe Person.swift
Em seguida, crie DetailVC.swift
Em seguida, crie a classe GetPeopleResponse.swift
Então, nossa classe de controlador de visualização
Em nosso StoryBoard
plz Conecte-se com nossa visão com outra usando segue com o identificador -peopleToDetails
Use UITableView em nossa primeira visualização
Use UIButton para obter os dados
Use 9 rótulos em nosso DetailVc
fonte
Se você estiver trabalhando no Swift 3, a sintaxe muda. O exemplo aqui funcionou para mim e tem uma boa explicação das etapas: https://grokswift.com/simple-rest-with-swift/
Este é o código desse tutorial:
fonte
Chamada de API usando classe de modelo
criar uma variável e conectar com a classe do modelo
criar uma classe de modelo Novo -> classe rápida
}
então podemos nos conectar com nossos objetos de visualização de tabela
fonte
fonte