22 releases

0.5.1 Oct 17, 2024
0.4.16 Sep 6, 2024
0.4.14 May 22, 2024
0.4.12 Jan 2, 2024
0.1.4 Feb 24, 2023

#251 in Network programming

Download history 45/week @ 2024-09-15 17/week @ 2024-09-22 207/week @ 2024-09-29 18/week @ 2024-10-06 208/week @ 2024-10-13 24/week @ 2024-10-20 3/week @ 2024-10-27 11/week @ 2024-11-03 1/week @ 2024-11-10 14/week @ 2024-11-17 23/week @ 2024-11-24 2/week @ 2024-12-01 68/week @ 2024-12-08 7/week @ 2024-12-15

75 downloads per month
Used in 3 crates

MIT license

350KB
8K SLoC

htsget-http

MIT licensed Build Status

Framework independent code for handling HTTP in htsget-rs.

Overview

This crate handles all the framework independent code for htsget-rs, it:

  • Produces htsget-specific HTTP responses.
  • Converts query results to JSON HTTP responses.
  • Handles htsget client error reporting.
  • Uses htsget-search to calculate URL tickets and byte ranges.

Usage

For running htsget-rs as an application

There is no need to interact with this crate for running htsget-rs.

As a library

This crate is useful for implementing additional framework dependent versions of the htsget-rs server. For example, htsget-rs could be written using another framework such as warp. This crate provides functions like get, post and get_service_info_json for this purpose. These functions take query and endpoint information, and process it using htsget-search to return JSON HTTP responses.

Feature flags

This crate has the following features:

  • s3-storage: used to enable S3Storage functionality.
  • url-storage: used to enable UrlStorage functionality.
  • experimental: used to enable experimental features that aren't necessarily part of the htsget spec, such as Crypt4GH support through C4GHStorage.

License

This project is licensed under the MIT license.

Dependencies

~30–53MB
~1M SLoC