My Account Log in

2 options

Building RESTful web services with .NET Core : developing distributed web services to improve scalability with .net core 2.0 and asp.net core 2.0 / Gaurav Aroraa, Tadit Dash.

Ebook Central Academic Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Aroraa, Gaurav, author.
Dash, Tadit, author.
Language:
English
Subjects (All):
Active server pages.
Microsoft .NET Framework.
Representational State Transfer (Software architecture).
Physical Description:
1 online resource (334 pages)
Edition:
1st edition
Other Title:
Building representational state transfer web services with .NET Core
Place of Publication:
Birmingham ; Mumbai : Packt, 2018.
System Details:
text file
Summary:
Building Complete E-commerce/Shopping Cart Application About This Book Follow best practices and explore techniques such as clustering and caching to achieve a reactive, scalable web service Leverage the .NET Framework to quickly implement RESTful endpoints. Learn to implement a client library for a RESTful web service using ASP.NET Core. Who This Book Is For This book is intended for those who want to learn to build RESTful web services with the latest .NET Core Framework. To make best use of the code samples included in the book, you should have a basic knowledge of C# and .NET Core. What You Will Learn Add basic authentication to your RESTful API Create a Carts Controller and Orders Controller to manage and process Orders Intercept HTTP requests and responses by building your own middleware Test service calls using Postman and Advanced REST Client Secure your data/application using annotations In Detail REST is an architectural style that tackles the challenges of building scalable web services. In today's connected world, APIs have taken a central role on the web. APIs provide the fabric through which systems interact, and REST has become synonymous with APIs. The depth, breadth, and ease of use of ASP.NET Core makes it a breeze for developers to work with for building robust web APIs. This book takes you through the design of RESTful web services and leverages the ASP.NET Core framework to implement these services. This book begins by introducing you to the basics of the philosophy behind REST. You'll go through the steps of designing and implementing an enterprise-grade RESTful web service. This book takes a practical approach, that you can apply to your own circumstances. This book brings forth the power of the latest .NET Core release, working with MVC. Later, you will learn about the use of the framework to explore approaches to tackle resilience, security, and scalability concerns. You will explore the steps to improve the performance of your applications. You'll also learn techniques to deal with security in web APIs and discover how to implement unit and integration test strategies. By the end of the book, you will have a complete understanding of Building a client for RESTful web services, along with some scaling techniques. Style and approach This book is a step-by-step, hands-on guide to designing and building RESTful web services. Downloading the example code for this book You can download the example code files for all Packt b...
Contents:
Cover
Title Page
Copyright and Credits
Dedication
Packt Upsell
Contributors
Table of Contents
Preface
Chapter 1: Getting Started
Discussing RESTful services
REST characteristics
Resource-oriented architecture
URI
REST constraints
Client-server architecture
Stateless
Caching
Code on demand (optional)
Uniform interface
More explanation
POST versus PUT explained
Layered system
Advantages and disadvantages of RESTful services
Advantages
Disadvantages
ASP.NET Core and RESTful services
Summary
Chapter 2: Building the Initial Framework - Laying the Foundation of the Application
SOAP
SOAP structure
Important points about SOAP
SOAP with HTTP POST
REST
Server and client are independent
Statelessness
Setting up the environment
Running the application
What's cooking here?
Interesting facts
Conclusions
Request and response
HTTP verbs
Postman
GET
Status codes
ASP.NET Core HTTP attributes
POST
PUT
DELETE
SOAP versus REST
Single-page application model
Service-oriented architecture
Chapter 3: User Registration and Administration
Why authentication and limiting requests?
Database design
User registration
Setting up EF with the API
Configuring DbContext
Generating the controller
Calling the API from a page to register the customer
CORS
Adding basic authentication to our REST API
Step 1 - Adding the (authorize) attribute
Step 2 - Designing BasicAuthenticationOptions and BasicAuthenticationHandler
Step 3 - Registering basic authentication at startup
Adding OAuth 2.0 authentication to our service
Step 1 - Designing the Config class
Step 2 - Registering Config at startup
Step 3 - Adding the [Authorize] attribute
Step 4 - Getting the token.
Step 5 - Calling the API with the access token
Step 6 - Adding the ProfileService class
Client-based API-consumption architecture
Chapter 4: Item Catalogue, Cart, and Checkout
Implementing controllers
Generating models
Generating controllers
Product listing
Product searching
Adding to cart
Implementing security
Client-side AddToCart function
API calls for AddToCart
POST - api/Carts
PUT - api/Carts/{id}
DELETE - api/Carts/{id}
Placing orders
UI design for placing an order
The client-side PostOrder function
Building order objects to match the model class Orders.cs
Pushing cart items into an order object as an array
Calling POST /api/Orders
PostOrders API POST method
Exposing shipping details
Chapter 5: Integrating External Components and Handling
Understanding the middleware
Requesting delegates
Use
Run
Map
Adding logging to our API in middleware
Intercepting HTTP requests and responses by building our own middleware
JSON-RPC for RPC communication
Request object
Response object
Chapter 6: Testing RESTful Web Services
Test paradigms
Test coverage and code coverage
Tasks, scenarios, and use cases
Checklist
Bugs and defects
Testing approach
Test pyramid
Types of tests
Testing the ASP.NET Core controller (unit testing)
Getting ready for the tests
Writing unit tests
Stubs and mocking
Security testing
Integration testing
Run tests
Fake objects
Testing service calls using Postman, Advanced REST Client, and more
Advanced Rest Client
User acceptance testing
Performance or load testing
Chapter 7: Continuous Integration and Continuous Deployment
Introduction - deployment terminology
The build stage.
Continuous integration
Deployment
Continuous deployment
Continuous delivery
Build and deployment pipeline
Release
Prerequisites for successful RESTful services deployments
The Azure environment
Cloud computing
The benefits of the cloud
Cloud-computing service models
Discussing the Azure environment
Starting with Azure
Publishing/hosting
Project hosting
The dashboard
Code
Work
Adding code to the repository
Test
Creating a test plan
Creating test cases
Running manual tests
Wiki
Build and Release tab
CI versus CD
CI and CD using TFS online
Initiating the CD release process
Chapter 8: Securing RESTful Web Services
OWASP security standards
Securing RESTful web services
The vulnerable areas of an unsecured web application
Cross-site scripting attacks
SQL injection attacks
What is cooking here?
Fixing SQL injection attacks
Cross-site request forgery
Authentication and authorization in action
Basic authentication, token-based authorization, and other authentications
Basic authentication
The security concerns of basic authentication
Token-based authorization
Other authentication methods
Securing services using annotations
Validations
Securing context
Data encryption and storing sensitive data
Sensitive data
Chapter 9: Scaling RESTful Services (Performance of Web Services)
Clustering
Load balancing
How does it work?
Introduction to scalability
Scaling in (vertical scaling)
Scaling out (horizontal scaling)
Linear scalability
Distributed caching
Caching persisted data (data-tier caching)
First-level caching
Second-level caching
Application caching
CacheCow
Memcached
Azure Redis Cache
Communication (asynchronous)
Summary.
Chapter 10: Building a Web Client (Consuming Web Services)
Consuming RESTful web services
Building a REST web client
Cooking the web client
Writing code
Implementing a REST web client
Chapter 11: Introduction to Microservices
Overview of microservices
Microservice attributes
Understanding microservice architecture
Communication in microservices
Synchronous messaging
Asynchronous messaging
Message formats
Why we should use microservices
How a microservice architecture works
Advantages of microservices
Prerequisites of a microservice architecture
Scaling
Vertical scaling
Horizontal scaling
DevOps culture
Automation
Testing
Microservices ecosystem in ASP.NET Core
Azure Service Fabric - microservice platform
Stateless and Stateful services - a service programming model
Communication - a way to exchange data between services
Other Books You May Enjoy
Index.
Notes:
Description based on print version record.
OCLC:
1039700044

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account