AlistGo/alist · error

invalid range header

Error message

invalid range header

What it means

Error "invalid range header" thrown in AlistGo/alist.

Source

Thrown at drivers/proton_drive/util.go:293

	d.tokenMutex.Unlock()

	go func() {

		// Token expires in 1 hour
		time.Sleep(1 * time.Hour)
		d.tokenMutex.Lock()

		delete(d.downloadTokens, token)
		d.tokenMutex.Unlock()
	}()

	return token
}

func parseRange(rangeHeader string, size int64) ([]httpRange, error) {
	if !strings.HasPrefix(rangeHeader, "bytes=") {
		return nil, fmt.Errorf("invalid range header")
	}

	rangeSpec := strings.TrimPrefix(rangeHeader, "bytes=")
	ranges := strings.Split(rangeSpec, ",")

	var result []httpRange
	for _, r := range ranges {
		r = strings.TrimSpace(r)
		if strings.Contains(r, "-") {
			parts := strings.Split(r, "-")
			if len(parts) != 2 {
				return nil, fmt.Errorf("invalid range format")
			}

			var start, end int64
			var err error

			if parts[0] == "" {

View on GitHub (pinned to 843d9dc814)

Solutions

  1. Send a valid HTTP Range header within the file size bounds and retry the request.

When it happens

Trigger: Thrown at drivers/proton_drive/util.go:293 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of AlistGo/alist@843d9dc814 (2026-08-15). Data as JSON: /api/errors/4fef583fa48da002. Report an issue: GitHub.