executor

package
v0.2.21 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 9, 2025 License: MIT Imports: 11 Imported by: 0

Documentation

Overview

Package executor provides request execution functionality. It handles the core logic of sending HTTP requests with session management, scripting support, and history tracking.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApplyScriptGlobalVars

func ApplyScriptGlobalVars(varProcessor *variables.VariableProcessor, globalVars map[string]any)

ApplyScriptGlobalVars applies global variables from script result to variable processor

func ExecutePreScript

func ExecutePreScript(script string, sessionCfg *session.SessionConfig, request *models.HttpRequest, varProcessor *variables.VariableProcessor, envStore *session.EnvironmentStore) (*scripting.ScriptResult, error)

ExecutePreScript executes a pre-request script. It uses context.Background(). For cancellation support, use ExecutePreScriptWithContext.

func ExecutePreScriptWithContext

func ExecutePreScriptWithContext(ctx context.Context, script string, sessionCfg *session.SessionConfig, request *models.HttpRequest, varProcessor *variables.VariableProcessor, envStore *session.EnvironmentStore) (*scripting.ScriptResult, error)

ExecutePreScriptWithContext executes a pre-request script with context support.

Types

type Executor

type Executor struct {
	// contains filtered or unexported fields
}

Executor handles HTTP request execution

func New

func New(sessionCfg *session.SessionConfig, varProcessor *variables.VariableProcessor, opts Options) *Executor

New creates a new Executor

func (*Executor) Execute

func (e *Executor) Execute(request *models.HttpRequest) (*Result, error)

Execute sends an HTTP request with full session and scripting support. It uses context.Background(). For cancellation support, use ExecuteWithContext.

func (*Executor) ExecuteWithContext

func (e *Executor) ExecuteWithContext(ctx context.Context, request *models.HttpRequest) (*Result, error)

ExecuteWithContext sends an HTTP request with context support for cancellation and timeouts.

type Options

type Options struct {
	// HTTPFilePath is the path to the .http file (used for session scoping)
	HTTPFilePath string
	// SessionName is an optional named session override
	SessionName string
	// NoSession disables session management (cookies and variables)
	NoSession bool
	// NoHistory disables saving to history
	NoHistory bool
	// Verbose enables verbose output
	Verbose bool
	// LogFunc is called with log messages (optional)
	LogFunc func(format string, args ...any)
	// EnvironmentStore provides per-session environment variables (optional)
	EnvironmentStore *session.EnvironmentStore
}

Options configures request execution behavior

type Result

type Result struct {
	Response    *models.HttpResponse
	TestResults []scripting.TestResult
	Logs        []string
}

Result contains the execution result

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL