How third party client would use my api methods who has no knowledge of my DTOs (the objects web service returns or takes as parameter). Do i need to expose my DTO's somehow?
Exposing webapi to third party
412 Views Asked by InTheWorldOfCodingApplications At
1
There are 1 best solutions below
Related Questions in ASP.NET-WEB-API
- Log to Dynatrace using Serilog and web.config .NET Framework API
- How to create a REST API with .NET Framework?
- ASP.NET Core Background task with service container
- App gateway closing connection after 100 requests
- Web API works with Windows authentication enabled when consumed via Swagger but throws an unauthorized issue when accessed through web app
- The 'GetUriByAction' method in the LinkGenerator class in Asp.Net Core is not defined in the Repository layer of the project
- Entity Tracking Conflict when Authenticating Users in ASP.NET Core API
- Class validation on response body in .NET WebApi
- My ASP.NET server does not work and I am wondering what's missing, when I open Swagger, I get error 500
- How to split Serilog log file into multiple files?
- Response payload is not odata payload
- How can I upload picture
- Web Forms aspx - PostAsync Web API
- do you know any free reporting services like devexpress or boldreports?
- WebAPI don't deserialize JSON but same payload works in Swagger
Related Questions in DTO
- Java Pojos - Setter-Call (Field Touched) Detection
- uncaughtException: Cannot determine a GraphQL output type for the "expectedInvestmentSupportInfo"
- How to implement equals method for class contains another class in java
- Multiple dtos for one entity and for different use cases
- Handling Partial Updates with Java Records in Spring WebFlux
- Problem when importing another class from a shared library resulting "Error: Module not found: Error: Can't resolve"
- Java - copy properties to another object
- NestJS and Graphql mutation: DTO and CreateInput
- Converting Entity to Dto in NestJS
- DTO to entity and vice-versa, Which layer, between the controller and the service, should handle the conversion?
- what is correct way to setup my DTO to works with TypeORM and relationships - postgres
- How to change the structure of a JSON serialized with Jackson in an DTO of a Panache/Hibernate Entity?
- NestJs serialize params with different names
- How to determine how will springboot handle a field of json when converting it to a Dto?
- How to use MongoDB query operators in TypeScript DTO with class-validator?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Documentation is your friend here. Publish some docs showing what the DTOs should be. If you know your clients, you could create packages that contain the proper DTOs. We did this for our .NET clients. We published a portable class library to nuget so any of these clients could download the package and use them. However, we have since stopped because this may overwhelm the client app developer. I.e. Let's say you have 100 DTOs, but a simple client app really only needs 5 of them. By including the package, there are now so many options that it might be confusing to know which DTO's to actually use and this leads to the client app maybe doing more than it should. We like to keep our client apps lean by only using DTOs that it needs. Yes, there is a little DTO definition duplication.
On the flip side, if you went the package route, you could essentially build up an SDK for using your API. You'll see Microsoft do this a lot to help with complexity of areas such as Azure Storage or Azure Service Bus. All of these have backing REST APIs, but the SDK ensures it's used in the designed and possibly the most optimized way.