1 |
|
2 | const fsw = require('../fsw');
|
3 | const swu = require('../swu');
|
4 |
|
5 | const fs = require('fs');
|
6 | const http = require('http');
|
7 | const url = require('url');
|
8 | const prefix = '<?xml version="1.0" standalone="no"?>\n';
|
9 |
|
10 | const server = http.createServer((request, response) => {
|
11 | const parsed = url.parse(request.url);
|
12 | const parts = decodeURIComponent(parsed.pathname).split('/');
|
13 | const label = parts.slice(1, 4).join('-');
|
14 | switch (label) {
|
15 | case "fsw-symbol-svg":
|
16 | fsw.symbolSvg(parts[4], (err, res) => {
|
17 | if (err) {
|
18 | console.log(err)
|
19 | } else {
|
20 | response.writeHead(200, { "Content-Type": "image/svg+xml; charset=utf-8" })
|
21 | response.write(prefix)
|
22 | response.write(res || "")
|
23 | response.end();
|
24 | }
|
25 | })
|
26 | break;
|
27 | case "fsw-symbol-png":
|
28 | fsw.symbolPng(parts[4], (err, res) => {
|
29 | if (err) {
|
30 | console.log(err)
|
31 | } else {
|
32 | response.writeHead(200, { "Content-Type": "image/png" })
|
33 | response.write(res || "")
|
34 | response.end();
|
35 | }
|
36 | })
|
37 | break;
|
38 | case "fsw-symbol-normalize":
|
39 | fsw.symbolNormalize(parts[4], (err, res) => {
|
40 | if (err) {
|
41 | console.log(err)
|
42 | } else {
|
43 | response.writeHead(200, { "Content-Type": "text/plain; charset=utf-8" })
|
44 | response.write(res || "")
|
45 | response.end();
|
46 | }
|
47 | })
|
48 | break;
|
49 | case "fsw-sign-svg":
|
50 | fsw.signSvg(parts[4], (err, res) => {
|
51 | if (err) {
|
52 | console.log(err)
|
53 | } else {
|
54 | response.writeHead(200, { "Content-Type": "image/svg+xml; charset=utf-8" })
|
55 | response.write(prefix)
|
56 | response.write(res || "")
|
57 | response.end();
|
58 | }
|
59 | })
|
60 | break;
|
61 | case "fsw-sign-png":
|
62 | fsw.signPng(parts[4], (err, res) => {
|
63 | if (err) {
|
64 | console.log(err)
|
65 | } else {
|
66 | response.writeHead(200, { "Content-Type": "image/png" })
|
67 | response.write(res || "")
|
68 | response.end();
|
69 | }
|
70 | })
|
71 | break;
|
72 | case "fsw-sign-normalize":
|
73 | fsw.signNormalize(parts[4], (err, res) => {
|
74 | if (err) {
|
75 | console.log(err)
|
76 | } else {
|
77 | response.writeHead(200, { "Content-Type": "text/plain; charset=utf-8" })
|
78 | response.write(res || "")
|
79 | response.end();
|
80 | }
|
81 | })
|
82 | break;
|
83 | case "swu-symbol-svg":
|
84 | swu.symbolSvg(parts[4], (err, res) => {
|
85 | if (err) {
|
86 | console.log(err)
|
87 | } else {
|
88 | response.writeHead(200, { "Content-Type": "image/svg+xml; charset=utf-8" })
|
89 | response.write(prefix)
|
90 | response.write(res || "")
|
91 | response.end();
|
92 | }
|
93 | })
|
94 | break;
|
95 | case "swu-symbol-png":
|
96 | swu.symbolPng(parts[4], (err, res) => {
|
97 | if (err) {
|
98 | console.log(err)
|
99 | } else {
|
100 | response.writeHead(200, { "Content-Type": "image/png" })
|
101 | response.write(res || "")
|
102 | response.end();
|
103 | }
|
104 | })
|
105 | break;
|
106 | case "swu-symbol-normalize":
|
107 | swu.symbolNormalize(parts[4], (err, res) => {
|
108 | if (err) {
|
109 | console.log(err)
|
110 | } else {
|
111 | response.writeHead(200, { "Content-Type": "text/plain; charset=utf-8" })
|
112 | response.write(res || "")
|
113 | response.end();
|
114 | }
|
115 | })
|
116 | break;
|
117 | case "swu-sign-svg":
|
118 | swu.signSvg(parts[4], (err, res) => {
|
119 | if (err) {
|
120 | console.log(err)
|
121 | } else {
|
122 | response.writeHead(200, { "Content-Type": "image/svg+xml; charset=utf-8" })
|
123 | response.write(prefix)
|
124 | response.write(res || "")
|
125 | response.end();
|
126 | }
|
127 | })
|
128 | break;
|
129 | case "swu-sign-png":
|
130 | swu.signPng(parts[4], (err, res) => {
|
131 | if (err) {
|
132 | console.log(err)
|
133 | } else {
|
134 | response.writeHead(200, { "Content-Type": "image/png" })
|
135 | response.write(res || "")
|
136 | response.end();
|
137 | }
|
138 | })
|
139 | break;
|
140 | case "swu-sign-normalize":
|
141 | swu.signNormalize(parts[4], (err, res) => {
|
142 | if (err) {
|
143 | console.log(err)
|
144 | } else {
|
145 | response.writeHead(200, { "Content-Type": "text/plain; charset=utf-8" })
|
146 | response.write(res || "")
|
147 | response.end();
|
148 | }
|
149 | })
|
150 | break;
|
151 | default:
|
152 | fs.readFile("server/index.html", (err, res) => {
|
153 | response.writeHead(200, { "Content-Type": "text/html; charset=utf-8" })
|
154 | response.write(err || res);
|
155 | response.end();
|
156 | });
|
157 | }
|
158 | })
|
159 |
|
160 | server.listen(4200);
|
161 |
|
162 | console.log("Listening at http://localhost:4200")
|