在Angular2开发模式下设置Access-Control-Allow-Origin标头

时间:2016-06-11 18:15:38

标签: angularjs angular cors

我正在向外部服务器发出HTTP请求,CORS无法通过该服务器。

在生产中,我将在nginx中设置Access-Control-Allow-Origin标头。 有没有办法在“内置”Angular的开发服务器中设置标题,这样我就不需要在笔记本电脑上运行任何代理了?

1 个答案:

答案 0 :(得分:1)

我认为您需要提供自定义配置以将cors模块注册为中间件:

'use strict';
var fallback = require('connect-history-api-fallback');
var log = require('connect-logger');
var cors = require('cors');

module.exports = {
  injectChanges: false, // workaround for Angular 2 styleUrls loading
  files: ['./**/*.{html,htm,css,js}'],
  watchOptions: {
    ignored: 'node_modules'
  },
  server: {
    baseDir: './',
    middleware: [
      log({format: '%date %status %method %url'}),
      cors(),
      fallback({
        index: '/index.html',
        htmlAcceptHeaders: ['text/html', 'application/xhtml+xml']
      })
    ]
  }
};

要使用自定义配置文件,请使用c或config参数:

"lite": "lite-server -c custom-config.js",

这是cors模块: