Skip to content

acessocard/Flurl.Http.Protobuf

Repository files navigation

Flurl.Http.Protobuf

Protobuf extension to Flurl library, using Protobuf-net to serialization

This is a community project, free and open source. Everyone is invited to contribute, fork, share and use the code.

Build status NuGet codecov


Features

  • Get, post, put and receive protobuf models

Usage

  • Create your class or use .proto file
[ProtoContract]
class Person {
    [ProtoMember(1)]
    public int Id {get;set;}
    [ProtoMember(2)]
    public string Name {get;set;}
}
  • Get an Protobuf:
var result = await "https://some.url".WithClient(client).GetProtobufAsync<Person>();
  • Post and receive a model:
var obj = new Person
{
    Id = 1,
    Name = "Foo"
};

var result = await "https://some.url".PostProtobufAsync(obj);
  • Put a model and receive:
 var obj = new Person
{
    Id = 2,
    Name = "Foo"
};

var result = await "https://some.url".PutProtobufAsync(obj).ReceiveProtobuf<Person>();

Support

To report a bug or request a feture, open an issue on GitHub.


Contributing

  • Start creating an issue and describing your proposed fix/enhancement.
  • Fork the project and make your change.
  • Write tests to cover all new/changed functionality.

Maintainers/Core team

Contributors can be found at the contributors page on Github.


Thanks

Releases

No releases published

Packages

No packages published

Languages