Skip to main content


Restful Web Service

Restful Web Service is a lightweight, maintainable, and scalable service that is built on the REST architecture. Restful Web Service, expose API from your application in a secure, uniform, stateless manner to the calling client.

Restful mostly came into popularity due to the following reasons:


  1. Heterogeneous languages and environments – This is one of the fundamental reasons which is the same as we have seen for SOAP as well.
  • It enables web applications that are built on various programming languages to communicate with each other
  • With the help of Restful services, these web applications can reside on different environments, some could be on Windows, and others could be on Linux.

Restful Architecture


An application or architecture considered REST full or REST-style has the following characteristics

  1. State and functionality are divided into distributed resources – This means that every resource should be accessible via the normal HTTP commands of GET, POST, PUT, or DELETE. So if someone wanted to get a file from a server, they should be able to issue the GET request and get the file. If they want to put a file on the server, they should be able to either issue the POST or PUT request. And finally, if they wanted to delete a file from the server, they an issue the DELETE request.

  1. The architecture is client/server, stateless, layered, and supports caching –
  • Client-server is the typical architecture where the server can be the web server hosting the application, and the client can be as simple as the web browser.

  • Stateless means that the state of the application is not maintained in REST.
    For example, if you delete a resource from a server using the DELETE command, you cannot expect that delete information to be passed to the next request.
    In order to ensure that the resource is deleted, you would need to issue the GET request. The GET request would be used to first get all the resources on the server. After which one would need to see if the resource was actually deleted.

In REST architecture, a REST Server commonly gives access to resources and REST client accesses and changes the resources. Here each resource is determined by URIs/ global IDs. REST uses different representation to serve a resource like text, JSON, XML. JSON is the most famous one.


  1. REST Full Client-Server
    RESTful Web Services


  • This is the most fundamental requirement of a REST based architecture. 

  • It means that the server will have a REST full web service which would provide the required functionality to the client. 

  • The client send's a request to the web service on the server. The server would either reject the request or comply and provide an adequate response to the client.

Comments

Popular posts from this blog

GitHub link  https://github.com/chamoddissanayake/OnlineFashionStore Group Project - Online Fashion Store There is a use case diagram of the system . This diagram denotes a better understanding about the system online fashion store. It provides who are the users of the system and what are the functionalities of the each user. System Functionalities Main Roles in the system. User Admin Store Manager Guest Only users who logged in to the system can place orders   Once the admin creates a login for the store manager, it should be notified to the store manager via email Admin can create categories for the products The store manager can add products with details to the relevant category and add discounts to selected products User can add products to the shopping cart   Users can purchase the selected products in the shopping cart by selecting the payment method Users can create a wish list from their preferred
ExpressJS                   - Is a web application framework for Nodejs                   - Discharged as free and open source computer program                              under the MIT Permit                   - Is outlined for building web applications and APIs                   - Provides a robust set of features for web and mobile                                     applications                   - Developed ans maintained by the Node js foundation                   - High performance, extensible and reusable   Ho w to start developing and using the Express Framework. You should have the Node and the npm (node package manager) installed . Confirm that node and npm are installed by running the following commands in terminal.                           node --version                           npm -- version Start your terminal/cmd, create a new folder Now to create the package.json file using npm                            npm init