summaryrefslogtreecommitdiff
path: root/http/README.md
blob: 67c578f317aaa42e75a8bb573023dd3a7b642ca2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# http

A framework for creating HTTP/HTTPS server.

## Example

```typescript
import { createServer } from "https://deno.land/x/http/server.ts";
import { encode } from "https://deno.land/x/strings/strings.ts";

async function main() {
  const server = createServer();
  server.handle("/", async (req, res) => {
    await res.respond({
      status: 200,
      body: encode("ok")
    });
  });
  server.handle(new RegExp("/foo/(?<id>.+)"), async (req, res) => {
    const { id } = req.match.groups;
    await res.respondJson({ id });
  });
  server.listen("127.0.0.1:8080");
}

main();
```

### File Server

A small program for serving local files over HTTP.

Add the following to your `.bash_profile`

```
alias file_server="deno https://deno.land/x/http/file_server.ts --allow-net"
```