Usando uma API node em um projeto Expo
Existe uma API de código aberto que faz webcraping na minha página de estudante universitário logando, obtendo informações e baixando arquivos. A API é escrita usando a standard node library, usando http, https, path, fs, url e algumas outras bibliotecas fora as que fazem o web scraping. Quero criar um app que use essa API com expo, mas ao importá-lo para um projeto expo, ocorre um erro: "It failed because the native React runtine does not include the Node standard library".
Como usar a API node no projeto expo apenas com mocks ou alias das bibliotecas node por bibliotecas compatíveis com react-native ou algo assim? Tentando evitar ter que reescrever uma parte considerável da API?
Pra resolver isso eu tentei:
- Importei a
'node-libs-react-native'emextraNodeModulesno arquivometro.config.jsno projeto expo para substituir a standard node library por mocks ou equivalentes portados para o navegador, mas falhou porque quando aberto no emulador recebi um error-type no modulo path, porque era esperado um valor de string em vez do valor do objeto. Provavelmente porque a library path equivalente não possui os mesmos métodos, parâmetros ou algo assim. - Modifiquei o
babel.config.jsda API para usar alias das bibliotecas incompatíveis com react-native para mocks ou bibliotecas do navegador, mas não funciona tendo no final o mesmo erro praticamente do import da'node-libs-react-native'no projeto expo.