Vai al contenuto

Geographical Distances

Torna a Servizi web.

Panoramica

Dentro la rete Docker acmesky-network, tutti gli URI sono relativi a http://geographical_distances:8080.
Da fuori Docker, la porta per raggiungere il servizio è 5000.

Risorsa Descrizione Risorsa per
POST /distance Calcola la distanza fra i dati indirizzi. Gli indirizzi vengono prima trasformati in coordinate GPS tramite geocoding (è richiesto che gli indirizzi siano il più possibile precisi, altrimenti il sistema trova le coordinate relative a un luogo il cui indirizzo meglio assomiglia a quello passato come argomento), successivamente la distanza viene calcolata mediante la formula di Haversine [EN] e ritornata in kilometri. ACMESky

Richieste

POST /distance

Calcola la distanza fra i dati indirizzi. Gli indirizzi vengono prima trasformati in coordinate GPS tramite geocoding (è richiesto che gli indirizzi siano il più possibile precisi, altrimenti il sistema trova le coordinate relative a un luogo il cui indirizzo meglio assomiglia a quello passato come argomento), successivamente la distanza viene calcolata mediante la formula di Haversine [EN] e ritornata in kilometri.

Parametri

Nome Tipo
Locations Locations

Tipo di ritorno

  • 200: Double
  • 400: -

Header della richiesta

  • Content-Type: application/json
  • Accept: application/json

Modelli

Locations

Nome Tipo
address_1 String
address_2 String

Interfaccia OpenAPI

Nel seguente blocco (cliccare sulla barra con su scritto "OpenAPI" in basso per aprirlo) è possibile visualizzare l'interfaccia OpenAPI che descrive il funzionamento delle API fornite da Geographical Distances.

OpenAPI
openapi: 3.0.0
info:
  title: Geographical Distances
  version: '1.0'
  description: Interface that models the operations available for the service that computes geographical distances in ACMESky.
servers:
  - url: 'http://geographical_distances:8080'
    description: Inside the Docker network
  - url: 'http://chosen_url:5000'
    description: Outside the Docker network (chosen_url is a placeholder)
paths:
  /distance:
    post:
      summary: calculateDistance
      operationId: calculateDistance
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: number
                format: double
                minimum: 0
                description: Distance between the two addresses.
        '400':
          description: Bad Request
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Locations'
        description: ''
      description: |-
        Calculates the distance between the given locations. Given addresses are first transformed into coordinates via geocoding, then the distance is computed and returned in kilometers.
        API for: ACMESky
components:
  schemas:
    Locations:
      title: Locations
      type: object
      description: 'Represents the two addresses to compute their distance. They are not coordinates, they are addresses.'
      properties:
        address_1:
          type: string
          minLength: 1
        address_2:
          type: string
          minLength: 1
      required:
        - address_1
        - address_2

Torna a Servizi web.