Building RESTful Web Services with .NET Core

Author: Gaurav Aroraa   Tadit Dash  

Publisher: Packt Publishing‎

Publication year: 2018

E-ISBN: 9781788296991

P-ISBN(Paperback): 89543100824960

Subject: TP312 程序语言、算法语言

Language: ENG

Access to resources Favorite

Disclaimer: Any content in publications that violate the sovereignty, the constitution or regulations of the PRC is not accepted or approved by CNPIEC.

Building RESTful Web Services with .NET Core

Chapter

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

Summary

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

Summary

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

Summary

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

Summary

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

Run tests

Testing service calls using Postman, Advanced REST Client, and more

Postman

Advanced Rest Client

User acceptance testing

Performance or load testing

Run tests

Summary

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

Summary

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

Summary

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

Summary

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

Deployment

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

Summary

Other Books You May Enjoy

Index

The users who browse this book also browse


No browse record.