1
0
mirror of https://github.com/go-micro/go-micro.git synced 2026-04-30 19:15:24 +02:00
Files
Copilot 1db7903010 [WIP] Implement missing features from documentation (#2859)
* Initial plan

* Add --header and --metadata flags to micro call command

Co-authored-by: asim <17530+asim@users.noreply.github.com>

* Apply code formatting with gofmt

Co-authored-by: asim <17530+asim@users.noreply.github.com>

* Add clarifying comments for dual metadata handling paths

Co-authored-by: asim <17530+asim@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: asim <17530+asim@users.noreply.github.com>
2026-02-13 14:20:34 +00:00
..

Web Service Example

HTTP web service with automatic service discovery and registration.

What It Does

This example creates an HTTP service that:

  • Serves RESTful API endpoints
  • Registers with service discovery
  • Provides health checks
  • Uses standard Go HTTP handlers

Run It

go run main.go

Test It

# Get service info
curl http://localhost:9090/

# List all users
curl http://localhost:9090/users

# Get specific user
curl http://localhost:9090/users/1

# Health check
curl http://localhost:9090/health

Key Features

  • Standard HTTP: Use familiar http.Handler interface
  • Service Discovery: Automatically registers with registry
  • Health Checks: Built-in health endpoint
  • JSON APIs: Easy REST API development

When to Use

Use web.Service when:

  • Building REST APIs
  • Serving web UIs
  • Working with HTTP-specific features
  • Migrating existing HTTP services

Use regular micro.Service when:

  • Building RPC services
  • Need bidirectional streaming
  • Want automatic load balancing
  • Prefer structured RPC over HTTP

Next Steps