projectdiscovery/nuclei · error

could not parse request URL: %w

Error message

could not parse request URL: %w

What it means

Error "could not parse request URL: %w" thrown in projectdiscovery/nuclei.

Source

Thrown at pkg/protocols/http/build_request.go:351

		}

		// ignore all annotations
		if stringsutil.HasPrefixAny(s, "@") {
			goto read_line
		}

		parts := strings.Split(s, " ")
		if len(parts) < 3 {
			return nil, fmt.Errorf("malformed request supplied")
		}

		if err := expressions.ContainsUnresolvedVariables(parts[1]); err != nil && !r.request.SkipVariablesCheck {
			return nil, errkit.Newf("unresolved variables `%v` found in request", parts[1])
		}

		parsed, err := urlutil.ParseURL(parts[1], true)
		if err != nil {
			return nil, fmt.Errorf("could not parse request URL: %w", err)
		}
		// self-contained requests choose their own destination URL, so validate
		// that host against the network policy.
		if err := r.validateSelfContainedHost(parsed.Hostname()); err != nil {
			return nil, err
		}
		values = generators.MergeMaps(
			generators.MergeMaps(dynamicValues, protocolutils.GenerateVariables(parsed, false, nil)),
			values,
		)

		// Evaluate (replace) variable with final values
		data, err = r.renderText(data, values)
		if err != nil {
			return nil, errkit.Wrap(err, "could not evaluate helper expressions")
		}

		return r.generateRawRequest(ctx, data, parsed, values, payloads)

View on GitHub (pinned to 265b3a3dec)

When it happens

Trigger: Thrown at pkg/protocols/http/build_request.go:351 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of projectdiscovery/nuclei@265b3a3dec (2026-08-15). Data as JSON: /api/errors/15ae248b2f3c000c. Report an issue: GitHub.