34 lines
1.2 KiB
Markdown
34 lines
1.2 KiB
Markdown
# xdrm go framework
|
|
|
|
### 1. Setup
|
|
|
|
You need a `redis` server running, if you don't have it, you can simply use a docker container for it with `docker run -d redis`.
|
|
|
|
All commands above must be launched from the root of this repository.
|
|
|
|
### 2. Build type checkers, controllers, middlewares
|
|
|
|
Type checkers, controllers and middlewares have to be compiled beforehand. A build command exists for that purpose.
|
|
```bash
|
|
aicra <project-folder>
|
|
```
|
|
|
|
### 3. Launch the api
|
|
|
|
```
|
|
$ go run ./main.go
|
|
```
|
|
|
|
Now you can play with it with any regular REST API client at `127.0.0.1:4242`.
|
|
|
|
##### 1. Get an authentication token
|
|
- `POST /token/admin` to get an authentication token.
|
|
|
|
#### 2. Manage tiny urls
|
|
|
|
> The authentication token must be set inside the `Authorization` header of each request except for the `GET` method.
|
|
|
|
- `POST /<some-url>` to set a new tiny-url for the url `<some-url>` to redirect to the FORM variable named `target`. Also you can send the FORM data as _x-www-form-urlencoded_, _form-data_ or _json_.
|
|
- `PUT /<some-url>` to update an existing tiny-url for the url `<some-url>` to redirect to the FORM variable named `target`.
|
|
- `DELETE /<some-url>` to delete the tiny-url for `<some-url>`.
|
|
- `GET /<some-url>` to redirect to the target of an existing url `<some-url>. |