Esqueleto do servidor de agendamento para Node.js

Esta é uma implementação de referência do Servidor de agendamento da API v3 para integração padrão com base em Node.js.

Pré-requisitos

Exige a instalação do

Primeiros passos

O servidor de reserva é implementado usando Node.js padrão sem nenhuma bibliotecas ou frameworks adicionais, para fins ilustrativos. Se você for usando qualquer outra estrutura, você pode facilmente alterar essa implementação para Express.js, MEAN.js ou qualquer outra biblioteca baseada em Node.js de sua escolha.

A implementação também não está usando bibliotecas de buffer de protocolo, mas usa a serialização JSON simples e os arquivos JSON.parse() e JSON.stringify() métodos.

Para fazer o download do projeto, execute o seguinte comando:

git clone https://maps-booking.googlesource.com/js-maps-booking-rest-server-v3-skeleton

Toda a base de código consiste em apenas dois arquivos JavaScript:

  • Bookserver.js: lógica de tratamento das solicitações e do servidor HTTP, incluindo autenticação
  • apiv3methods.js - métodos que implementam a interface da API v3

Depois de fazer o download dos arquivos, inicie o servidor de agendamento executando o seguinte: o comando:

node bookingserver.js

O esqueleto grava todas as solicitações recebidas e enviadas no console. monitorar a execução dela para fins de rastreamento.

Caso você precise de um IDE para alterações ou depuração de código, use Visual Studio Code ou qualquer outro editor de sua escolha. Depure o projeto iniciando bookingserver.js no Ambiente Node.js e definir pontos de interrupção quando necessário.

Como testar seu servidor de agendamento

Fazer o download Utilitário de teste de agendamento. Para instalar, siga as instruções de instalação fornecidas instruções em sua página README.

Para os testes, você precisa criar um arquivo de texto para armazenar suas credenciais. Digite o nome de usuário e a senha em uma única linha, por exemplo, em um arquivo chamado cred.txt:

nome de usuário:senha

Você também precisa de uma cópia local de um feed de disponibilidade para os comerciantes de teste. Nos exemplos de comandos abaixo, o feed de disponibilidade é avail.json.

Agora é possível testar o servidor de agendamento com estes comandos:

  • Chamadas de teste para o método HealthCheck:
    bin/bookingClient -server_addr="localhost:8080" -health_check_test=true -credentials_file="./cred.txt"
    
  • Chamadas de teste para o método CheckAvailability:
    bin/bookingClient -server_addr="localhost:8080" -check_availability_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    
  • Teste as chamadas para os métodos CreateBooking e UpdateBooking:
    bin/bookingClient -server_addr="localhost:8080" -booking_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
    

Como você está implementando seu próprio servidor de agendamento, talvez seja necessário executar testes adicionais sobre ele (por exemplo, list_bookings_test, reScheduling_test etc.) com o objetivo de que todos os testes sejam aprovados (-all_tests=true).