Support CORS headers to git smart http protocol (#5719)

This commit is contained in:
Lunny Xiao 2019-01-15 05:05:27 +08:00 committed by techknowlogick
parent 5a081c7a80
commit 270fa6d63b
4 changed files with 38 additions and 18 deletions

View file

@ -27,6 +27,18 @@ import (
// HTTP implmentation git smart HTTP protocol
func HTTP(ctx *context.Context) {
if len(setting.Repository.AccessControlAllowOrigin) > 0 {
// Set CORS headers for browser-based git clients
ctx.Resp.Header().Set("Access-Control-Allow-Origin", setting.Repository.AccessControlAllowOrigin)
ctx.Resp.Header().Set("Access-Control-Allow-Headers", "Content-Type, Authorization, User-Agent")
// Handle preflight OPTIONS request
if ctx.Req.Method == "OPTIONS" {
ctx.Status(http.StatusOK)
return
}
}
username := ctx.Params(":username")
reponame := strings.TrimSuffix(ctx.Params(":reponame"), ".git")