1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| var gulp = require('gulp');
var browserSync = require('browser-sync'); var httpProxy = require('http-proxy');
var proxyTarget = 'http://127.0.0.1:5555/';
var proxy = httpProxy.createProxyServer({ target: proxyTarget });
function proxyMiddleware(req, res, next) { if (/\.(html|css|js|png|jpg|jpeg|gif|ico|xml|rss|txt|eot|svg|ttf|woff)(\?((r|v|rel|rev)=[\-\.\w]*)?)?$/.test(req.url)) { res.setHeader('set-cookie', 'csrftoken=true'); next(); } else { res.setHeader('set-cookie', 'csrftoken=true'); proxy.web(req, res); } }
function browserSyncInit(baseDir, files, browser) { browser = browser === undefined ? 'default' : browser;
browserSync.instance = browserSync.init(files, { startPath: '/django_templates/base.html', server: { baseDir: baseDir, middleware: proxyMiddleware }, browser: browser });
}
gulp.task('serve', ['watch'], function () { browserSyncInit([ 'app', '.tmp' ], [ 'app/*.html', 'app/styles/**/*.css', '.tmp/styles/**/*.css', 'app/scripts/**/*.js', 'app/partials/**/*.html', 'app/images/**/*' ]); });
|