.NET IdempotentAPI v2.0.0RC Supports Idempotency in a Cluster Environment
.NET Nakama
by
1y ago
Introduction Idempotency in Web APIs ensures that the API works correctly (as designed) even when consumers (clients) send the same request multiple times. To simplify the integration of Idempotency in an API project, we could use the IdempotentAPI open-source NuGet library. IdempotentAPI implements an ASP.NET Core attribute (filter) to handle the HTTP write operations (POST and PATCH) to affect only once for the given request data and idempotency key. In February 2022, IdempotentAPI 1.0.0-RC-01 was released with many improvements. The community’s contribution plays a crucial role in the evolu ..read more
Visit website
Resilience APIs to Transient Faults using Polly
.NET Nakama
by
1y ago
Introduction In our previous article (.NET Nakama, 2022 July), we saw that Transient faults are inevitable temporary errors (especially in microservice and cloud-based applications). An API is Resilient when it can recover from transient failures and continue functioning (in a way that avoids downtime or data loss). Therefore, we have learned the main strategies to handle transient faults. Transient fault handling may seem complicated, but libraries like Polly can simplify it. In this article, we will use the Polly library to apply and combine the Retries, Circuit-Breaker, Network Timeout, and ..read more
Visit website
Must-Know Concepts Related to LINQ and IEnumerable
.NET Nakama
by
2y ago
Introduction Our previous article (.NET Nakama, 2022 March) taught us about the LINQ architecture and technologies, query syntaxes, etc. As we saw, we can define a generic class by using the <T> sign after the class name, e.g. MyClassName<T>. The T is the generic type parameter in which we can use any word (e.g., TKey, TCustomer, etc.). Commonly, the name of the generic type parameter starts with a T to clearly show that it’s a type. We can use a generic class or method for different types without the cost of boxing operations and the risk of runtime casts. In addition, we saw that ..read more
Visit website
Enriched Web API Documentation using Swagger/OpenAPI in ASP.NET Core
.NET Nakama
by
2y ago
Introduction Before selecting or attempting any integration with an API, most developers check out its API documentation. Keeping the API documentation up to date to reflect the software changes is challenging and requires time and effort. In the case of Web APIs, we would like to document the following: Authorization Types (e.g., API Key, Bearer token, Authorization code, etc.) Action Methods: The endpoints, HTTP Methods, Headers, etc. Data Contracts: The description of the data to be exchanged between the service and a client. We can show each parameter’s name, type, restrictions, etc. Exam ..read more
Visit website
All about Web API Versioning in ASP.NET Core
.NET Nakama
by
2y ago
Introduction Before releasing an API, we should consider how to release future improvements and possible breaking changes. For example, it is most likely that something would have to change in our APIs, such as the business requirements, resources and their relationships, third-party APIs, etc. In general, versioning is the process of assigning a unique version (based on a specific format) per software release. The most widely used versioning format is the Semantic versioning (also known as SemVer) which is defined as follows: X.Y.Z (Major.Minor.Patch). Major: A version for incompatible API c ..read more
Visit website
All about Web API Versioning in ASP.NET Core
.NET Nakama
by
2y ago
Introduction Before releasing an API, we should consider how to release future improvements and possible breaking changes. For example, it is most likely that something would have to change in our APIs, such as the business requirements, resources and their relationships, third-party APIs, etc. In general, versioning is the process of assigning a unique version (based on a specific format) per software release. The most widely used versioning format is the Semantic versioning (also known as SemVer) which is defined as follows: X.Y.Z (Major.Minor.Patch). Major: A version for incompatible API c ..read more
Visit website
REST Web API in Practice: Improving towards Perfection
.NET Nakama
by
2y ago
Introduction Designing REST Web APIs in practice has many challenges. Usually, various questions are born for different parts of the project. Our decisions can determine, among others, the usability, extensibility, and performance of our APIs. In our previous articles, we saw how the REST architectural style guides us to create Web APIs by defining six constraints (principles) and some key points that we can consider when designing APIs (.NET Nakama, 2021 September 4). Furthermore, we saw some practical suggestions for adopting consistent naming conventions in our URLs (API endpoints) and how ..read more
Visit website
REST Web API in Practice: Naming Endpoints, Filtering, Sorting, and Pagination
.NET Nakama
by
2y ago
Introduction The REST architectural style emphasizes a uniform interface between components, in which the information is transferred in a standardized form (.NET Nakama, 2021 September 4). One of the architectural constraints (identification of resources) to achieve that is to uniquely identify the location of each resource through a single URL. In practice, when we are trying to design the URLs structure, various questions and possible conflicts between the team members may arise. In this article, we will see some practical suggestions for adopting consistent: naming conventions in our URLs ..read more
Visit website
Designing a RESTful Web API
.NET Nakama
by
2y ago
Introduction An Application Programming Interface (API) simplifies the use of complex actions in software. Technically, an API describes how software components or systems should interact (communicate) with each other (Carver P., 2014). APIs are essential to modern organizations, as they provide a flexible way of working in (.NET Nakama, 2020 August): Software Code (e.g., by organizing code, reusing code, providing different restrictions, etc.), Software Product (e.g., by providing extensions or new features-product more quickly), and Teams or Persons (e.g., by organizing and splitting work ..read more
Visit website
How to Start Your Own Blogging Journey
.NET Nakama
by
2y ago
Introduction One year has passed since the publication of the first article in the .NET Nakama blog. Happy birthday .NET Nakama ?. Figure 1. - Happy birthday .NET Nakama. This blog has started from my need to help other developers improve their .NET skills. So, I decided to share my learning journey, teaching materials, thoughts, ideas, and source code. Along the way, I am also improving my skills and meeting new people. It’s a great experience so far, and I hope to keep blogging about .NET and be a .NET Nakama for you. You may be thinking about what Nakama means. Nakama (仲間) is a Japanese wor ..read more
Visit website

Follow .NET Nakama on FeedSpot

Continue with Google
Continue with Apple
OR