REST-arkkitehtuurin hyödyntäminen web-rajapinnan kehittämisessä
Aalto, Olli (2019)
Aalto, Olli
2019
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201904225666
https://urn.fi/URN:NBN:fi:amk-201904225666
Tiivistelmä
Tämän opinnäytetyön tavoitteena oli suunnitella ja kehittää Festum Software Oy:lle REST-arkkitehtuuriin perustuva web-rajapinta, jonka avulla taloyhtiön digitaaliseen porrasnäyttöön saadaan tuotua reaaliaikaista tietoa taloyhtiön asukkaista, tiedotteista ja tiedostoista. Rajapinnan käyttäjiksi määriteltiin digitaalisiin porrasnäyttöihin erikoistuneita Festum Software Oy:n yhteistyökumppaneina toimivia yrityksiä. Opinnäytetyö jaettiin teoreettiseen sekä käytännönläheiseen osioon. Teoreettisessa osiossa syvennyttiin erityyppisiin web-rajapintoihin, sekä perehdyttiin kehitettävän rajapinnan hyödyntämään REST-arkkitehtuurin sisältämiin käsitteisiin ja toimintoihin. Teoreettisessa osiossa käsiteltiin myös HTTP-viestintäprotokollaa, jonka toiminnan ymmärtäminen oli REST-rajapinnan kehittämisen kannalta erittäin olennaista. Kehi-tetty REST-arkkitehtuuria hyödyntävä web-rajapinta toteutettiin C#-ohjelmointikielellä Microsoft Visual Studio - kehitysympäristössä .NET Core 2.0 – teknologialla. Rajapinnan kehityksen ajan versionhallintajärjestelmänä toimi Git ja rajapinnan tietokannoiksi valittiin Apache Drill, Minio ja Redis. Lopputuloksena saavutettiin REST-arkkitehtuuria laajasti hyödyntävä web-rajapinta, joka on tällä hetkellä Festum Software Oy:n digitaalisiin porrasnäyttöihin erikoistu-neiden asiakasyritysten päivittäisessä käytössä. Rajapinnan avulla porrasnäytöille saa-tiin tuotua Festum Software Oy:n Hausvise-isännöintijärjestelmää käyttävien isännöitsijätoimistojen taloyhtiöiden, sekä näissä taloyhtiöissä asuvien asukkaiden dataa. Tulevaisuudessa rajapintaa voidaan varmasti jatkokehittää, mikäli sille halutaan luoda uusia ominaisuuksia tai porrasnäytöille halutaan tuoda sellaista dataa, jota näytöillä ei vielä esitetä. The purpose of this thesis was to plan and develop a REST-architecture based web API to Festum Software Oy. Main functionality of the web API was to fetch and return real time data about housing company’s residents, announcements and files, and thus the data could be presented on the digital signage. The web API was de-fined to be consumed by Festum Software Oy’s partner companies, that are specialized in digital signages. The thesis was divided into two different parts: theoretical and practical. The theoretical part focused on different types of web APIs and familiarized the concepts and constraints of the REST-architecture, which was made use of in the development of the web API in this thesis. HTTP-protocol was also brought up in the theoretical part because understanding the functionality of this protocol was extremely relevant in the development of REST-API. Microsoft Visual Studio operated as the main development environment during the development of the REST-API and it was programmed with C# programming language with the help of .NET Core 2.0 technology. During the development of this REST-API, Git acted as a version control system and the databases chosen to interact with the API are called Apache Drill, Minio and Redis. The result of this thesis was a web API, what extensively makes use of REST-architecture, which is now consumed in daily bases by the Festum Software Oy’s partner companies and their digital signages. With the help of the developed REST-API, it is now possible to the digital signages to represent real time data about hous-ing companies and their residents. In the future it’s possible to develop the API fur-ther in case there are need to create new functionalities or there are data that is desired to show on the digital signage that aren’t already there.