1 function d(s) { dump(s + "\n"); }
\r
3 function handleRequest(request, response)
\r
6 request.queryString.split('&').forEach(function (val) {
\r
7 var [name, value] = val.split('=');
\r
8 query[name] = unescape(value);
\r
11 var isPreflight = request.method == "OPTIONS";
\r
15 response.setHeader("Access-Control-Allow-Origin", query.allowOrigin);
\r
20 if (request.hasHeader("Access-Control-Request-Headers")) {
\r
22 request.getHeader("Access-Control-Request-Headers").split(",").
\r
23 filter(function(name) /^magic-/.test(name))[0];
\r
27 secData = eval(unescape(magicHeader.substr(6)));
\r
28 secData.allowHeaders = (secData.allowHeaders || "") + "," + magicHeader;
\r
31 if (secData.allowHeaders)
\r
32 response.setHeader("Access-Control-Allow-Headers", secData.allowHeaders);
\r
34 if (secData.allowMethods)
\r
35 response.setHeader("Access-Control-Allow-Methods", secData.allowMethods);
\r
37 if (secData.cacheTime)
\r
38 response.setHeader("Access-Control-Max-Age", secData.cacheTime.toString());
\r
43 response.setHeader("Content-Type", "application/xml", false);
\r
44 response.write("<res>hello pass</res>\n");
\r