Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Configuration overview

classDiagram
    direction LR
    class Config {
        + ListenerConfig listener (optional)
        + LogConfig log (optional)
        + ServiceConfig service
    }
    class ListenerConfig {
        + String ip_address
        + Integer port
        + TlsConfig tls_config (optional)
    }
    class TlsConfig {
        + String cert
        + String key
        + Integer port (optional)
    }
    class LogConfig {
        + VerboseConfig verbose
    }
    class VerboseConfig {
        + Boolean header
        + Boolean body
    }
    class ServiceConfig {
        + Array~RuleSet~ rule_sets
        + Array~RuleSet~ middlewares
        + String fallback_respond_dir
    }

    Config "1" o-- "0..1" ListenerConfig
    Config "1" o-- "0..1" LogConfig
    Config "1" o-- "1" ServiceConfig
    ListenerConfig "1" o-- "0..1" TlsConfig
    LogConfig "1" o-- "1" VerboseConfig

Here’s an overview of the rule data structure in a nested Markdown format:

  • apimock.toml
    • [listener] : Server listener.
      • ip_address: IP address.
      • port: Port for either HTTP or HTTPS.
      • tls
    • [listener.tls] : Server TLS/SSL settings.
      • key: Private key file path.
      • cert: Certificate file path.
      • port: Port for HTTPS.
    • [log] : Logger.
      • verbose.header: Verbose on request header.
      • verbose.body: Verbose on request body.
    • [service] : App service
      • rule_sets: Rule-based routing. The detail is here.
      • middlewares
      • fallback_respond_dir: File-based routing base. The default is ., your current directory.