1.2.4 • Published 2 years ago

react-native-fetch-retry v1.2.4

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

FetchRetry

Simplifique a maneira de lidar com requisições

  • Execute: npm i react-native-snackbar react-native-fetch-retry

Configurando o package

Adicione em seu package.json as definições necessárias

  • FetchRetry: Object | Se existir usará as inforamções fornecidas | Se não existir precisará passar todas as informações necessarias
  • debug: Object (Opcional) | Lista de action a ser mostrada o response e retorno do request no console.
  • environment: String | Configuração do ambiente a se conectar
  • environments: Object | Lista dos ambientes disponiveis
  • requestOptions: Object (Opcional) | Opções disponiveis até o momento method e headers
  • retryButton: String | Texto do botão para tentar novamente
  • retryRequest: String | Texto para mostrar junto ao tentar novamente ao ocorrer um erro no servidor
  • retryConnection: String | Texto para mostrar junto ao tentar novamente ao ocorrer um erro ao se conectar ao servidor
  • customMessage: Boolean (Opcional) | Para usar o texto retornado da requisição para mostrar junto ao tentar novamente ao ocorrer um erro no servidor (por padrão ele mostra o texto se for text/plain)
  • CaptureLogger: Boolean (Opcional) | Ativar a captura do retorno do endpoint com o CaptureLogger
  • statusReporter: Object (Opcional) | Lista de response.status a serem enviadas ao CaptureLogger
  • environmentsReporter: Object (Opcional) | Lista de ambientes a serem enviadas ao CaptureLogger

Exemplo de um package.json

{
  "name": "react-app",
  "version": "1.0",
  "private": true,
  "FetchRetry": {
    "debug": ["myAction"],
    "environment": "dev",
    "environments": [
      {
        "environment": "dev",
        "url": "https://next-alexanderiscoding-n8kn3vnhj-alexanderiscoding.vercel.app"
      },
      {
        "environment": "prod",
        "url": "https://alexanderiscoding.com"
      }
    ],
    "requestOptions": {
      "method": "POST",
      "headers": {
        "Content-Type": "application/json; charset=UTF-8"
      }
    },
    "retryButton": "Tentar novamente",
    "retryRequest": "Ops, algo não ocorreu conforme esperado nessa requisição.",
    "retryConnection": "Ops, tivemos um problema ao fazer essa requisição.",
    "CaptureLogger": true,
    "statusReporter": [500],
    "environmentsReporter": ["prod"]
  }
}

Método de uso

Importe a function na sua aplicação

import fetchRetry from 'react-native-fetch-retry';

const fetchRetry = require('react-native-fetch-retry');

é possivel alterar o nome da function de acordo com seu gosto.

Efetue uma requisição para sua API

const response = await fetchRetry(url, requestOptions, reload, action, customMessage, customResponse, defaultRequest);

Em caso de necessitar executar uma função com argumentos em reload, utilize:

await fetchRetry(url, requestOptions, function () { myfunc(arg, arg) });

Em caso de necessitar o environment atual, utilize:

import fetchRetry, { environment } from 'react-native-fetch-retry';

  • url: String | Endpoint da API, que será feita a requisição
  • requestOptions: Object | Opções da requisição, mais exemplos em Fetch
  • reload: Function | Função a ser executar ao clicar em retryButton
  • action: String (Opcional) | Nome do código de referência para identificar ou ignorar ao ativar o CaptureLogger
  • customMessage: Boolean (Opcional) | Para configuração individual da configuração global
  • customResponse: Boolean (Opcional) | Invés de retornar o conteúdo ou false, retornará { response: response, ok: ok }, sendo o response igual a response.json(), mas em caso de response.ok == false, o response será igual a response.status.
  • defaultRequest: Boolean (Opcional) | Irá utilizar a url e requestOptions, passada na função, quando as mesmas já estiverem configuradas.
1.2.4

2 years ago

1.2.3

2 years ago

1.2.2

2 years ago

1.2.1

2 years ago

1.2.0

2 years ago

1.1.9

2 years ago

1.1.8

2 years ago

1.1.7

2 years ago

1.1.6

2 years ago

1.1.5

2 years ago

1.1.4

2 years ago

1.1.3

2 years ago

1.1.2

2 years ago

1.1.1

2 years ago

1.1.0

2 years ago

1.0.19

2 years ago

1.0.18

2 years ago

1.0.17

2 years ago

1.0.16

2 years ago

1.0.15

2 years ago

1.0.14

2 years ago

1.0.13

2 years ago

1.0.12

2 years ago

1.0.11

2 years ago

1.0.10

2 years ago

1.0.9

2 years ago

1.0.8

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago