CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Upptäcka kritiska ändringar i JSON-meddelanden i webb-API:er
KTH, School of Engineering Sciences in Chemistry, Biotechnology and Health (CBH), Biomedical Engineering and Health Systems, Health Informatics and Logistics.
2019 (Swedish)Independent thesis Advanced level (professional degree), 10 credits / 15 HE creditsStudent thesisAlternative title
Detecting breaking changes in JSON messages in web APIs (English)
Abstract [sv]

Ett sätt att utveckla webbapplikationer är att göra det i två delar. Dels ett API, dels en klient. Denna rapport fokuserar på JSON-API:er och på att hitta en lösning för att identifiera kritiska ändringar i JSON-meddelanden innan de påverkar sin avseddaklient på ett oönskat sätt.

En fallstudie är genomförd hos ett företag som utvecklar sina webbapplikationer i två delar. Resultatet är en utvecklad webbapplikation (ett verktyg) som löser problemet genom att spela in API-förfrågningar som repeteras mot flera olika versioner av API:et. Versionstaggade svar samlas in och jämförs mot varandra med olika avseenden.

Webbapplikationen (verktyget) lyckas på ett tillfredställande sätt identifiera kritiska ändringar i JSON-meddelanden. Detta verifieras med hjälp av ett test-API, och bekräftar därmed examensarbetets hypotes.

För att kunna testa ett API, vars bakomliggande applikation är stateful, förväntas den applikationen vara återställd till ett standardiserat tillstånd inför varje användning av verktyget. Detta är en begränsning.

Det finns en utvecklingspotential i att få verktyget att fungera även mot autentiserade API:er.

Abstract [en]

One way of developing web applications is in two parts, where one part is an API and the other part is the client. This report focuses on JSON APIs and on finding a solution for identifying breaking changes in JSON messages before they affect their intended client in undesirable ways.

A case study has been carried out at a company that develops their web applications in two parts. The result is a web application (a tool) that solves the problem by recording API requests that are then replayed against different versions of the API. Version tagged responses are collected and compared against each other by different aspects.

The web application (the tool) succeeds in identifying breaking changes in JSON messages. This is verified using a test API, which in turn verifies the thesis’ hypothesis.

To test an API, whose underlying application is stateful, that application is expected to be reset to a standardized state before each use of the tool. This is a limitation.

There is potential for future development in getting the tool work against authenticated APIs.

Place, publisher, year, edition, pages
2019. , p. 56
Series
TRITA-CBH-GRU ; 2019:132
Keywords [en]
JSON, Diff, Comparison, API
Keywords [sv]
JSON, Diff, Jämförelse, API
National Category
Information Systems
Identifiers
URN: urn:nbn:se:kth:diva-267252OAI: oai:DiVA.org:kth-267252DiVA, id: diva2:1391703
External cooperation
Slagkryssaren AB
Subject / course
Computer Technology, Program- and System Development
Educational program
Bachelor of Science in Engineering - Engineering and Economics
Supervisors
Examiners
Available from: 2020-02-07 Created: 2020-02-05 Last updated: 2020-02-07Bibliographically approved

Open Access in DiVA

fulltext(1153 kB)2 downloads
File information
File name FULLTEXT01.pdfFile size 1153 kBChecksum SHA-512
4fde2dc0b1a7519fdd8c71ba95df5b3cb545e5a6930761c590be1bad7f9ff97e1f9726008b20ea22a902439ecf29314383fd181cf22ae1729e42de7048a7c0ef
Type fulltextMimetype application/pdf

By organisation
Health Informatics and Logistics
Information Systems

Search outside of DiVA

GoogleGoogle Scholar
Total: 2 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 17 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf