mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 16:40:24 +08:00 
			
		
		
		
	[API] generalize list header (#16551)
* Add info about list endpoints to CONTRIBUTING.md * Let all list endpoints return X-Total-Count header * Add TODOs for GetCombinedCommitStatusByRef * Fix models/issue_stopwatch.go * Rrefactor models.ListDeployKeys * Introduce helper func and use them for SetLinkHeader related func
This commit is contained in:
		@@ -181,6 +181,23 @@ func (ctx *APIContext) SetLinkHeader(total, pageSize int) {
 | 
			
		||||
 | 
			
		||||
	if len(links) > 0 {
 | 
			
		||||
		ctx.Header().Set("Link", strings.Join(links, ","))
 | 
			
		||||
		ctx.AppendAccessControlExposeHeaders("Link")
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// SetTotalCountHeader set "X-Total-Count" header
 | 
			
		||||
func (ctx *APIContext) SetTotalCountHeader(total int64) {
 | 
			
		||||
	ctx.Header().Set("X-Total-Count", fmt.Sprint(total))
 | 
			
		||||
	ctx.AppendAccessControlExposeHeaders("X-Total-Count")
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// AppendAccessControlExposeHeaders append headers by name to "Access-Control-Expose-Headers" header
 | 
			
		||||
func (ctx *APIContext) AppendAccessControlExposeHeaders(names ...string) {
 | 
			
		||||
	val := ctx.Header().Get("Access-Control-Expose-Headers")
 | 
			
		||||
	if len(val) != 0 {
 | 
			
		||||
		ctx.Header().Set("Access-Control-Expose-Headers", fmt.Sprintf("%s, %s", val, strings.Join(names, ", ")))
 | 
			
		||||
	} else {
 | 
			
		||||
		ctx.Header().Set("Access-Control-Expose-Headers", strings.Join(names, ", "))
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user