https://github.com/raku-community-modules/HTTP-UserAgent
Web user agent class for Perl 6.
https://github.com/raku-community-modules/HTTP-UserAgent
cookie cookiejar perl6 ssl user-agent
Last synced: 3 months ago
JSON representation
Web user agent class for Perl 6.
- Host: GitHub
- URL: https://github.com/raku-community-modules/HTTP-UserAgent
- Owner: sergot
- License: mit
- Created: 2013-02-17T12:18:17.000Z (almost 13 years ago)
- Default Branch: master
- Last Pushed: 2024-01-29T11:46:27.000Z (almost 2 years ago)
- Last Synced: 2025-01-31T07:21:39.612Z (12 months ago)
- Topics: cookie, cookiejar, perl6, ssl, user-agent
- Language: Raku
- Homepage:
- Size: 403 KB
- Stars: 37
- Watchers: 13
- Forks: 39
- Open Issues: 41
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# HTTP::UserAgent [](https://travis-ci.org/sergot/http-useragent)
Web user agent class for [Raku](https://raku.org).
## Usage
```Perl6
use HTTP::UserAgent;
my $ua = HTTP::UserAgent.new;
$ua.timeout = 10;
my $response = $ua.get("URL");
if $response.is-success {
say $response.content;
} else {
die $response.status-line;
}
```
## Installation
To install it using Zef (a module management tool bundled with Rakudo Star):
```
$ zef install HTTP::UserAgent
```
## Testing
To run tests:
```
$ prove -e "perl6 -Ilib"
```
## Documentation
Please see the documentation links listed below:
- [HTTP::Cookies](https://github.com/sergot/http-useragent/blob/master/lib/HTTP/Cookies.rakumod#L112)
- [HTTP::Cookie](https://github.com/sergot/http-useragent/blob/master/lib/HTTP/Cookie.rakumod#L17)
- [HTTP::Header](https://github.com/sergot/http-useragent/blob/master/lib/HTTP/Header.rakumod#L109)
- [HTTP::Header::Field](https://github.com/sergot/http-useragent/blob/master/lib/HTTP/Header/Field.rakumod#L12)
- [HTTP::Message](https://github.com/sergot/http-useragent/blob/master/lib/HTTP/Message.rakumod#L97)
- [HTTP::Request](https://github.com/sergot/http-useragent/blob/master/lib/HTTP/Request.rakumod#L79)
- [HTTP::Response](https://github.com/sergot/http-useragent/blob/master/lib/HTTP/Response.rakumod#L35)
- [HTTP::UserAgent](https://github.com/sergot/http-useragent/blob/master/lib/HTTP/UserAgent.rakumod#L424)
- [HTTP::UserAgent::Common](https://github.com/sergot/http-useragent/blob/master/lib/HTTP/UserAgent/Common.rakumod#L20)
## To-do List and Future Ideas
~~strikethrough text~~ means **done**.
- clean up
- speed up
### HTTP::UserAgent
- ~~HTTP Auth~~
- let user set his own cookie jar
- ~~make getprint() return the code response~~
- ~~security fix - use File::Temp to create temporary cookie jar~~
- use Promises
- ~~make SSL dependency as optional~~
### HTTP::Cookies
- path restriction
### OpenSSL
- ~~fix NativeCall's int bug~~
- make it work on more platforms
### IO::Socket::SSL
- make it work on more platforms
- make SSL support more reliable
- add throwing exception on failing SSL
- more tests