FsHttp 9.1.1
See the version list below for details.
dotnet add package FsHttp --version 9.1.1
NuGet\Install-Package FsHttp -Version 9.1.1
<PackageReference Include="FsHttp" Version="9.1.1" />
paket add FsHttp --version 9.1.1
#r "nuget: FsHttp, 9.1.1"
// Install FsHttp as a Cake Addin #addin nuget:?package=FsHttp&version=9.1.1 // Install FsHttp as a Cake Tool #tool nuget:?package=FsHttp&version=9.1.1
FsHttp
FsHttp is a .Net HTTP client library for C# and F#. It aims for describing and executing HTTP requests in convenient ways that can be used in production and interactive environments.
FsHttp is authored by @ronaldschlenker. Feel free to leave a message.
Documentation
Please see FsHttp Documentation site for a detailed documentation.
A Simple Example
An example in F#:
#r "nuget: FsHttp"
open FsHttp
http {
POST "https://reqres.in/api/users"
CacheControl "no-cache"
body
jsonSerialize
{|
name = "morpheus"
job = "leader"
|}
}
|> Request.send
An example in C#:
#r "nuget: FsHttp"
using FsHttp.CSharp;
await "https://reqres.in/api/users".Post()
.CacheControl("no-cache")
.Body()
.JsonSerialize(new
{
name = "morpheus",
job = "leader"
}
)
.SendAsync();
Migrating to new versions
For different upgrade paths, please read the Migrations section in the docu.
Building
You need to have the latest .Net 5 SDK installed.
Building binaries, publish, and test
There is a F# script that can be used to perform several build tasks from command line. It can be executed in this way:
PS> dotnet fsi .\build.fsx [task]
Common tasks are:
- build
- test
- publish
Building the documentation
The documentation in ./docs
is auto-generated from the files in ./src/Docu
. In order to build them, run:
PS> .\docu.ps1
Credits
Parts of the code is taken from the HTTP utilities of FSharp.Data.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- FSharp.Core (>= 5.0.0)
- System.Text.Json (>= 5.0.0)
-
.NETStandard 2.1
- FSharp.Core (>= 5.0.0)
- System.Text.Json (>= 5.0.0)
-
net5.0
- FSharp.Core (>= 5.0.0)
-
net6.0
- FSharp.Core (>= 5.0.0)
NuGet packages (13)
Showing the top 5 NuGet packages that depend on FsHttp:
Package | Downloads |
---|---|
Functional.SplinterBots.API
Package Description |
|
FsHttp.FSharpData
FSharp.Data (JSON) integration package for FsHttp |
|
FsHttp.NewtonsoftJson
JSON.Net (Newtonsoft.Json) integration package for FsHttp |
|
Swate.Api
Dotnet library for easy access to Swate API. |
|
Perla.PackageManager
A Library under the Perla umbrella. This package gives you a small set of APIs to interact with the JSPM Generator and Skypack API. Also, this library powers the package management importmap features of Perla Dev Server. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
14.5.1 | 67,206 | 8/9/2024 |
14.5.0 | 146,146 | 3/5/2024 |
14.4.2 | 302 | 3/5/2024 |
14.4.1 | 72,990 | 2/5/2024 |
14.4.0 | 79,147 | 1/7/2024 |
14.2.0 | 828 | 1/5/2024 |
14.1.0 | 786 | 1/3/2024 |
14.0.0 | 625 | 1/2/2024 |
13.3.0 | 13,010 | 12/28/2023 |
13.2.0 | 608 | 12/28/2023 |
12.2.0-preview01 | 648 | 12/24/2023 |
12.1.0 | 2,715 | 11/27/2023 |
12.0.0 | 51,655 | 10/31/2023 |
11.0.0 | 48,163 | 8/5/2023 |
11.0.0-preview01 | 1,281 | 3/25/2023 |
10.0.0 | 195,470 | 11/25/2022 |
10.0.0-preview3 | 902 | 11/23/2022 |
10.0.0-preview2 | 1,114 | 11/12/2022 |
10.0.0-preview1 | 930 | 11/12/2022 |
9.1.2 | 31,888 | 6/5/2022 |
9.1.1 | 3,576 | 4/24/2022 |
9.1.0 | 1,732 | 4/19/2022 |
9.0.6 | 1,775 | 4/19/2022 |
9.0.5 | 1,778 | 4/14/2022 |
9.0.4 | 1,529 | 4/8/2022 |
9.0.3 | 1,417 | 4/8/2022 |
9.0.2 | 3,795 | 4/6/2022 |
9.0.1 | 1,337 | 4/5/2022 |
9.0.0 | 13,851 | 4/5/2022 |
8.0.1 | 8,421 | 3/6/2022 |
8.0.0 | 1,182 | 3/2/2022 |
7.0.0 | 41,254 | 12/13/2021 |
6.0.1 | 2,363 | 11/23/2021 |
6.0.0 | 1,008 | 11/22/2021 |
0.9.0 | 1,938 | 7/14/2019 |
v7.0.0
- #92: `expect` and `assert` pass through the original response instead of unit.
v8.0.0
- #93 (thanks @drhumlen): Changed content type 'text/json' to 'application/json'.
- Http modules are always AutoOpen in both Dsl and DslCE
- No extra modules for builder methods
v8.0.1
- #89: No more blocking requests using net5 with FSI
v9.0.0 / v9.0.1
- Redefined builders (see README.md)
- Many breaking changes (see "Migrations" sections in the docu)
v9.0.2
- Added JSON toArray functions
- Fixed #99: Response.saveFile should create the directory if not present
v9.0.3
- Supporting netstandard2.1 again
v9.0.4
- Referenced lowest possible FSharp.Core and other referenced packages version
v9.0.5
- Support for netstandard2.0
- New 'FsHttp.NewtonsoftJson' integration package
- More JSON functions and defaults config
v9.0.6
- #100 - Removed FSI print messages
v9.1.0
- Fixed naming inconsistency for 'Response.deserialize...' functions
- More C# JSON functions
v9.1.1
- Fix: Usiong GlobalConfig.Json.defaultJsonSerializerOptions as default for jsonSerialize