William Cheng 807250a430
Prepare 7.6.0 (#18412)
* Revert "v7.5.0 release"

This reverts commit 1eafe2aebf33b13bee0ead66d62a6436e7db059d.

* update master to v7.6.0 snapshot

* update readme

* update samples
2024-04-17 19:05:37 +08:00

9.8 KiB

Org.OpenAPITools - the C# library for the Echo Server API

Echo Server API

This C# SDK is automatically generated by the OpenAPI Generator project:

  • API version: 0.1.0
  • SDK version: 1.0.0
  • Generator version: 7.6.0-SNAPSHOT
  • Build package: org.openapitools.codegen.languages.CSharpClientCodegen

Frameworks supported

Dependencies

The DLLs included in the package may not be the latest version. We recommend using NuGet to obtain the latest version of the packages:

Install-Package RestSharp
Install-Package Newtonsoft.Json
Install-Package JsonSubTypes
Install-Package System.ComponentModel.Annotations

NOTE: RestSharp versions greater than 105.1.0 have a bug which causes file uploads to fail. See RestSharp#742. NOTE: RestSharp for .Net Core creates a new socket for each api call, which can lead to a socket exhaustion problem. See RestSharp#1406.

Installation

Run the following command to generate the DLL

  • [Mac/Linux] /bin/sh build.sh
  • [Windows] build.bat

Then include the DLL (under the bin folder) in the C# project, and use the namespaces:

using Org.OpenAPITools.Api;
using Org.OpenAPITools.Client;
using Org.OpenAPITools.Model;

Packaging

A .nuspec is included with the project. You can follow the Nuget quickstart to create and publish packages.

This .nuspec uses placeholders from the .csproj, so build the .csproj directly:

nuget pack -Build -OutputDirectory out Org.OpenAPITools.csproj

Then, publish to a local feed or other host and consume the new package via Nuget as usual.

Usage

To use the API client with a HTTP proxy, setup a System.Net.WebProxy

Configuration c = new Configuration();
System.Net.WebProxy webProxy = new System.Net.WebProxy("http://myProxyUrl:80/");
webProxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
c.Proxy = webProxy;

Getting Started

using System.Collections.Generic;
using System.Diagnostics;
using Org.OpenAPITools.Api;
using Org.OpenAPITools.Client;
using Org.OpenAPITools.Model;

namespace Example
{
    public class Example
    {
        public static void Main()
        {

            Configuration config = new Configuration();
            config.BasePath = "http://localhost:3000";
            // Configure HTTP basic authorization: http_auth
            config.Username = "YOUR_USERNAME";
            config.Password = "YOUR_PASSWORD";

            var apiInstance = new AuthApi(config);

            try
            {
                // To test HTTP basic authentication
                string result = apiInstance.TestAuthHttpBasic();
                Debug.WriteLine(result);
            }
            catch (ApiException e)
            {
                Debug.Print("Exception when calling AuthApi.TestAuthHttpBasic: " + e.Message );
                Debug.Print("Status Code: "+ e.ErrorCode);
                Debug.Print(e.StackTrace);
            }

        }
    }
}

Documentation for API Endpoints

All URIs are relative to http://localhost:3000

Class Method HTTP request Description
AuthApi TestAuthHttpBasic POST /auth/http/basic To test HTTP basic authentication
AuthApi TestAuthHttpBearer POST /auth/http/bearer To test HTTP bearer authentication
BodyApi TestBinaryGif POST /binary/gif Test binary (gif) response body
BodyApi TestBodyApplicationOctetstreamBinary POST /body/application/octetstream/binary Test body parameter(s)
BodyApi TestBodyMultipartFormdataArrayOfBinary POST /body/application/octetstream/array_of_binary Test array of binary in multipart mime
BodyApi TestBodyMultipartFormdataSingleBinary POST /body/application/octetstream/single_binary Test single binary in multipart mime
BodyApi TestEchoBodyAllOfPet POST /echo/body/allOf/Pet Test body parameter(s)
BodyApi TestEchoBodyFreeFormObjectResponseString POST /echo/body/FreeFormObject/response_string Test free form object
BodyApi TestEchoBodyPet POST /echo/body/Pet Test body parameter(s)
BodyApi TestEchoBodyPetResponseString POST /echo/body/Pet/response_string Test empty response body
BodyApi TestEchoBodyStringEnum POST /echo/body/string_enum Test string enum response body
BodyApi TestEchoBodyTagResponseString POST /echo/body/Tag/response_string Test empty json (request body)
FormApi TestFormIntegerBooleanString POST /form/integer/boolean/string Test form parameter(s)
FormApi TestFormObjectMultipart POST /form/object/multipart Test form parameter(s) for multipart schema
FormApi TestFormOneof POST /form/oneof Test form parameter(s) for oneOf schema
HeaderApi TestHeaderIntegerBooleanStringEnums GET /header/integer/boolean/string/enums Test header parameter(s)
PathApi TestsPathStringPathStringIntegerPathIntegerEnumNonrefStringPathEnumRefStringPath GET /path/string/{path_string}/integer/{path_integer}/{enum_nonref_string_path}/{enum_ref_string_path} Test path parameter(s)
QueryApi TestEnumRefString GET /query/enum_ref_string Test query parameter(s)
QueryApi TestQueryDatetimeDateString GET /query/datetime/date/string Test query parameter(s)
QueryApi TestQueryIntegerBooleanString GET /query/integer/boolean/string Test query parameter(s)
QueryApi TestQueryStyleDeepObjectExplodeTrueObject GET /query/style_deepObject/explode_true/object Test query parameter(s)
QueryApi TestQueryStyleDeepObjectExplodeTrueObjectAllOf GET /query/style_deepObject/explode_true/object/allOf Test query parameter(s)
QueryApi TestQueryStyleFormExplodeFalseArrayInteger GET /query/style_form/explode_false/array_integer Test query parameter(s)
QueryApi TestQueryStyleFormExplodeFalseArrayString GET /query/style_form/explode_false/array_string Test query parameter(s)
QueryApi TestQueryStyleFormExplodeTrueArrayString GET /query/style_form/explode_true/array_string Test query parameter(s)
QueryApi TestQueryStyleFormExplodeTrueObject GET /query/style_form/explode_true/object Test query parameter(s)
QueryApi TestQueryStyleFormExplodeTrueObjectAllOf GET /query/style_form/explode_true/object/allOf Test query parameter(s)

Documentation for Models

Documentation for Authorization

Authentication schemes defined for the API:

http_auth

  • Type: HTTP basic authentication

http_bearer_auth

  • Type: Bearer Authentication