httpcat /

A netcat like tool for analysing/mocking HTTP requests (from both server and client perspective).  My first experiment with Go.

## Usage


	  Client mode
		 httpcat -client [options]

		 Currently only supports GET requests.

	  Server mode
		 httpcat -server [options]

	  Options (either mode)
		 -entire or -e : Display entire request/response instead of just the body.
		 -verbose or -v : Be verbose.

	  Options (client mode only)
		 -accept or -a [accept string] : Adds 'Accept' header to request.

	  Options (server mode only)
		 -body or -b [body message] : Body to respond with.  Response code will default to 200.
		 -port or -p [port] : Port to listen on.
		 -response or -r [response code] : Status code to respond with.  Defaults to 204.
		 -cors or -c : Enable Cross Origin Resource Sharing support.
		 -separator or -s [separator string] : Use the provided separator to separate messages.

## Building

cd src
go build -o ../httpcat

### Cross Compiling


GOOS=linux GOARCH=amd64 go build -o ../httpcat-linux


GOOS=windows GOARCH=amd64 go build -o ../httpcat-win64

Intel Mac

GOOS=darwin GOARCH=amd64 go build -o ../httpcat-mac-intel

M1/ARM64 Mac

GOOS=darwin GOARCH=arm64 go build -o ../httpcat-mac-arm64

## To Do

Add support for DELETE, PUT, and POST requests in client mode.