本文整理汇总了TypeScript中restify.Server.use方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Server.use方法的具体用法?TypeScript Server.use怎么用?TypeScript Server.use使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类restify.Server
的用法示例。
在下文中一共展示了Server.use方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: enableCORSFix
/**
* a crude CORS based on `Qwerios`' comment in
* https://github.com/mcavage/node-restify/issues/664
*
* See issues:
* https://github.com/mcavage/node-restify/issues/284 (closed)
* https://github.com/mcavage/node-restify/issues/664 (unresolved)
*
* @param additionalHeaders string[]
* @return void
*/
enableCORSFix(additionalHeaders: string[] = []): void {
/*************************************
Cors
**************************************/
this.server.use(restify.CORS());
let headers = [
"authorization",
"withcredentials",
"x-requested-with",
"x-forwarded-for",
"x-real-ip",
"user-agent",
"keep-alive",
"host",
"accept",
"connection",
"upgrade",
"content-type",
"dnt",
"if-modified-since",
"cache-control"
];
restify.CORS.ALLOW_HEADERS = [
...restify.CORS.ALLOW_HEADERS || [],
...headers,
...additionalHeaders || []
];
// Manually implement the method not allowed handler to fix failing
// preflights
this.server.on(
"MethodNotAllowed",
(request: Request, response: Response) => {
if (request.method.toUpperCase() !== "OPTIONS") {
response.send(new restify.MethodNotAllowedError());
return;
} else {
// Send the CORS headers
//
response.header("Access-Control-Allow-Credentials", true);
response.header(
"Access-Control-Allow-Headers",
restify.CORS.ALLOW_HEADERS.join(", ")
);
response.header(
"Access-Control-Allow-Methods",
"GET, HEAD, POST, PUT, DELETE, OPTIONS"
);
response.header(
"Access-Control-Allow-Origin",
request.headers.origin
);
response.header("Access-Control-Max-Age", 0);
response.header("Content-type", "text/plain charset=UTF-8");
response.header("Content-length", 0);
response.send(204);
}
}
);
}