万本电子书0元读

万本电子书0元读

顶部广告

Building RESTful Web Services with .NET Core电子书

售       价:¥

5人正在读 | 0人评论 9.8

作       者:Gaurav Aroraa,Tadit Dash

出  版  社:Packt Publishing

出版时间:2018-05-31

字       数:29.6万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
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.
目录展开

Title Page

Copyright and Credits

Building RESTful Web Services with .NET Core

Dedication

Packt Upsell

Why subscribe?

PacktPub.com

Contributors

About the authors

About the reviewer

Packt is searching for authors like you

Preface

Who this book is for

What this book covers

To get the most out of this book

Download the example code files

Download the color images

Conventions used

Get in touch

Reviews

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

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

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

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

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

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

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

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

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

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

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

Leave a review - let other readers know what you think

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部