---
name: "Mojo::UserAgent::Server"
section: "3pm"
platform: "linux"
package: "libmojolicious-perl"
version: "9.39+dfsg-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Mojo::UserAgent::Server"
---

# Mojo::UserAgent::Server(3pm)

Application server

## NAME

Mojo::UserAgent::Server - Application server

## SYNOPSIS

```
  use Mojo::UserAgent::Server;
  my $server = Mojo::UserAgent::Server->new;
  say $server->url;
```

## DESCRIPTION

Mojo::UserAgent::Server is an embedded web server based on Mojo::Server::Daemon that processes requests for Mojo::UserAgent.

## ATTRIBUTES

Mojo::UserAgent::Server implements the following attributes.

### ioloop

```
  my $loop = $server->ioloop;
  $server  = $server->ioloop(Mojo::IOLoop->new);
```

Event loop object to use for I/O operations, defaults to the global Mojo::IOLoop singleton.

## METHODS

Mojo::UserAgent::Server inherits all methods from Mojo::Base and implements the following new ones.

### app

```
  my $app = Mojo::UserAgent::Server->app;
            Mojo::UserAgent::Server->app(Mojolicious->new);
  my $app = $server->app;
  $server = $server->app(Mojolicious->new);
```

Application this server handles, instance specific applications override the global default.

```
  # Change application behavior
  $server->app->defaults(testing => 'oh yea!');
```

### nb\_url

```
  my $url = $server->nb_url;
  my $url = $server->nb_url('http');
  my $url = $server->nb_url('https');
```

Get absolute Mojo::URL object for server processing non-blocking requests with "app" and switch protocol if necessary.

### restart

```
  $server->restart;
```

Restart server with new port.

### url

```
  my $url = $server->url;
  my $url = $server->url('http');
  my $url = $server->url('https');
```

Get absolute Mojo::URL object for server processing blocking requests with "app" and switch protocol if necessary.

## SEE ALSO

Mojolicious, Mojolicious::Guides, \<https://mojolicious.org\>.
