P5-http-anyua

Jul 20, 2023

HTTP user agent programming interface unification layer

HTTPAnyUA provides a small wrapper for unifying the programming interfaces of several different actual user agents HTTP clients under one familiar interface.

Rather than providing yet another programming interface for you to learn, HTTPAnyUA follows the HTTPTiny interface. This also means that you can plug in any supported HTTP client LWPUserAgent, Furl, etc. and use it as if it were HTTPTiny.

Unfortunately, many modules on CPAN are hardcoded to work with specific HTTP clients, leaving the end user unable to use the HTTP client that would be best for them. Although the end user won’t – or at least doesn’t need to – use HTTPAnyUA directly, they will benefit from client choice if their third-party modules use HTTPAnyUA or something like it.

The primary goal of HTTPAnyUA is to make it easy for module developers to write HTTP code once that can work with any HTTP client the end user may decide to plug in. A secondary goal is to make it easy for anyone to add support for new or yet-unsupported user agents.



Checkout these related ports:
  • Zope213 - Object-based web application platform Version 2.13
  • Zola - Fast static site generator
  • Zgrab2 - Fast Go application scanner
  • Zerowait-httpd - Lightweight and fast http server
  • Zenphoto - Simpler web photo gallery
  • Zend-framework - Framework for developing PHP web applications
  • Yuicompressor - The Yahoo! JavaScript and CSS Compressor
  • Ytdl - YouTube downloader written in Go
  • Yt-dlp - Command-line program for downloading videos from various platforms
  • Youtube_dl - Program for downloading videos from various services
  • Yourls - Your Own URL Shortener
  • You-get - Dumb downloader that scrapes the web
  • Yaws - Web server for dynamic content written in Erlang
  • Yarr - Yet another rss reader
  • Yarn - Package manager for node, alternative to npm (meta port)