本文整理汇总了TypeScript中cors类的典型用法代码示例。如果您正苦于以下问题:TypeScript cors类的具体用法?TypeScript cors怎么用?TypeScript cors使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了cors类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: main
async function main() {
const app = express();
app.use(cors());
await initAccounts();
app.use(session({
secret: 'grant',
resave: true,
saveUninitialized: true,
}));
app.use(bodyParser.urlencoded({ extended: true }));
const grant = new Grant(grantConfig);
app.use(GRANT_PATH, grant);
app.get(`${GRANT_PATH}/handle_facebook_callback`, function (req, res) {
const accessToken = req.query.access_token;
res.redirect(`${STATIC_SERVER}/login?service=facebook&access_token=${accessToken}`);
});
app.get(`${GRANT_PATH}/handle_google_callback`, function (req, res) {
const accessToken = req.query.access_token;
res.redirect(`${STATIC_SERVER}/login?service=google&access_token=${accessToken}`);
});
initializeOAuthResolver();
const schema = createSchemeWithAccounts(AccountsServer);
app.use('/graphql', bodyParser.json(), graphqlExpress(request => ({
schema,
context: JSAccountsContext(request),
debug: true,
})));
app.use('/graphiql', graphiqlExpress({
endpointURL: '/graphql',
}));
const server = createServer(app);
new SubscriptionServer(
{
schema,
execute,
subscribe,
},
{
path: WS_GQL_PATH,
server,
}
);
server.listen(PORT, () => {
console.log('Mock server running on: ' + PORT);
});
}
示例2: function
export let parserInit = ()=> {
app.use(favicon(path.resolve('favicon.ico')));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
app.use(cookieParser());
if (SERVER_CONFIG.env === DEV) {
app.use(logger(DEV));
var whitelist = ['http://127.0.0.1:3008','http://127.0.0.1:3006'];
var corsOptionsDelegate = function(req, callback){
var corsOptions;
if(whitelist.indexOf(req.header('Origin')) !== -1){
corsOptions = { origin: true ,credentials:true}; // reflect (enable) the requested origin in the CORS response
}else{
corsOptions = { origin: false }; // disable CORS for this request
}
callback(null, corsOptions); // callback expects two parameters: error and options
};
/*var corsOptions = {
origin: 'http://127.0.0.1:3008',
optionsSuccessStatus: 200 // some legacy browsers (IE11, various SmartTVs) choke on 204
};*/
app.use(cors(corsOptionsDelegate));//white List
//app.options('http://127.0.0.1:3008', cors());//If allowed Access-Control-Allow-Originďź* Be sure to write
}
else if (SERVER_CONFIG.env === PROD) {
app.use(logger('prod'));
}
timeoutParser.init();
errParser.init();
parserInit = ()=> {
throw new Error("parsers/index.ts: parsers have been initialized.");
}
}
示例3: config
/**
* Configures application
*
* @class Server
* @method config
* @return {void}
*/
public config(): void {
// mount query string parser
this.app.use(bodyParser.urlencoded({
extended: true
}))
// mount json form parser
this.app.use(bodyParser.json())
// mount cookie parker
this.app.use(cookieParser())
// mount logger
this.app.use(logger("dev"))
// mount compression
this.app.use(compression())
// mount helmet
this.app.use(helmet())
// mount cors
this.app.use(cors())
// cors
// this.app.use((req: Request, res: Response, next: NextFunction) => {
// res.header('Access-Control-Allow-Origin', 'http://localhost:8080')
// res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, PATCH, DELETE, OPTIONS, PURGE')
// res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept, Authorization, Access-Control-Allow-Credentials')
// res.header('Access-Control-Allow-Credentials', 'true')
// next()
// })
}
示例4: bootstrap
async function bootstrap() {
const app = await NestFactory.create(AppModule);
app.use(cors());
app.useStaticAssets(join(__dirname, '..', 'public'));
await app.listen(app.get(ConfigService).port);
}
示例5: callback
server.setConfig((app) => {
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
app.use(morgan('combined'));
app.use(cors({
origin: (origin, callback) => {
try {
let ok: boolean = config.originsWhitelist.indexOf(origin) !== -1
callback(null, ok);
} catch (e) {
callback(e, null);
}
}
}));
app.use(jwt({ secret: config.appSecret })
.unless({
path: ['/api/account/login', '/setup', '/',
{
url: '/api/donors',
methods: ['GET', 'POST']
}]
}));
let feed: DonorsFeed = kernel.get<DonorsFeed>(TYPES.DonorsFeed);
feed.start(httpServer);
});
示例6: bootstrap
public bootstrap(port: number) {
// enable CORS
this.expressApplication.use(cors(), (request: express.Request, response: express.Response, next: express.NextFunction) => {
console.log("CORS enabled for all routes");
next();
});
// configure API and error routes
this.expressContactRouter.configApiRoutes(this.expressApplication);
this.expressContactRouter.configErrorRoutes(this.expressApplication);
this.expressApplication.set("port", port);
// create http server
let server = http.createServer(this.expressApplication);
server.listen(port);
// add error handler
server.on("error", onError);
// start listening on port
server.on("listening", onListening);
// event listener for HTTP server "error" event.
function onError(error: any) {
"use strict";
if (error.syscall !== "listen") {
throw error;
}
let bind = typeof port === "string"
? "Pipe " + port
: "Port " + port;
// handle specific listen errors with friendly messages
switch (error.code) {
case "EACCES":
console.error(bind + " requires elevated privileges");
process.exit(1);
break;
case "EADDRINUSE":
console.error(bind + " is already in use");
process.exit(1);
break;
default:
throw error;
}
}
/**
* Event listener for HTTP server "listening" event.
*/
function onListening() {
let addr = server.address();
let bind = typeof addr === "string"
? "pipe " + addr
: "port " + addr.port;
let debugForExpress = debug("ExpressApplication");
debugForExpress("Listening on " + bind);
}
}
示例7: constructor
constructor(options) {
var corsOptions = {
credentials: options.credentials || true,
origin: options.origin || function(origin, callback) {
callback(null, true);
}
};
Container.get('app').use(cors(corsOptions));
}
示例8: constructor
constructor() {
this.app = express();
this.app.use(cors());
this.app.use(bodyParser.json());
this.app.use(bodyParser.urlencoded({ extended: false }));
this.setupSwagger();
this.setupControllers();
}
示例9: registerCors
private registerCors() {
// Cors
var corsOptions = {
credentials: true,
origin: function(origin, callback) {
callback(null, true);
}
};
this.app.use(cors(corsOptions));
}
示例10: constructor
/**
* Constructor.
*
* @class Server
* @constructor
*/
constructor() {
// create expressjs application
this.app = express();
this.app.use(bodyParser.json());
this.app.use(cors());
// configure application
this.config();
}