As plataformas suportadas são as mesmas do Beagle. O Beagle gRPC utiliza o gRPC Swift e depende do Swift versão 5.2 ou superior.
Esta classe implementa o protocolo NetworkClient
utilizando gRPC.
Para um NetworkClientGRPC são necessários os seguintes parâmetros:
Parâmetros | Descrição | Obrigatório |
---|---|---|
grpcAddress | Endereço do servidor gRPC. O host e a porta especificados aqui serão utilizados para criar o canal de comunicação gRPC. A URL das requisições devem ter este parâmetro como prefixo, caso contrario as requisições serão encaminhadas para o customHttpClient. | ✓ |
customHttpClient | NetworkClient alternativo, utilizado para tratar as requisições que não são gRPC. | |
defaultCallOptions | Valores padrões para todas as requisições gRPC, por exemplo, aqui você pode definir headers estáticos e o limite de tempo das requisições. Consulte o gRPC Swift para ver todas as opções disponíveis. | |
interceptors | Objeto responsável por criar interceptores para cada RPC. Interceptores permitem que requisições e respostas sejam observadas, modificadas ou descartadas se necessário. |
0.0.0.0
na porta 50051
.
Consulte a página Beagle gRPC Backend para mais informações sobre como rodar seu servidor.Adicione a dependência no seu Podfile
pod 'BeagleGRPC'
Após adicionar o Beagle gRPC como dependência no seu projeto, instancie um NetworkClientGRPC
e altere o Beagle.dependencies para utilizá-lo.
import Beagle
import BeagleGRPC
let dependencies = BeagleDependencies()
Beagle.dependencies = dependencies
let baseUrl = "http://0.0.0.0:50051"
dependencies.networkClient = NetworkClientGRPC(
grpcAddress: baseUrl,
customHttpClient: nil
)
dependencies.urlBuilder = UrlBuilder(
baseUrl: URL(string: baseUrl)
)
Agora você está pronto para conectar ao seu servidor gRPC.
BeagleScreenViewController(.remote(.init(url: "/home")))
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.