Взаимодействие с внутренним API - PullRequest
2 голосов
/ 28 апреля 2019

Доброе утро, я работаю над проектом, который разделен на две части:

  • API бэкэнда (на основе json)

  • Внешний интерфейс (простые страницы в формате html: компиляция форм, получение информации по идентификатору)

У меня возникла проблема с поиском правильной структуры и технологий для использования в веб-интерфейсе. Я должен работать с чистым JavaScript? Должен ли я использовать VueJS / Angular / некоторые другие JS Framework?

Сервер написан на Java Spring Boot.

В будущем веб-интерфейс также будет иметь возможность записать встречу, выбрав дату временного интервала.

Для внешнего интерфейса, который я пробовал с XMLHttpRequest, но у меня были некоторые проблемы с получением данных GET и POST с помощью API (код запущен, но ничего не произошло)

я пробовал с этим банальным кодом

var xmlhttp = new XMLHttpRequest();
var url = "API_URL";

xmlhttp.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    var myArr = JSON.parse(this.responseText);
    myFunction(myArr);
  }
};
xmlhttp.open("GET", url, true);
xmlhttp.send();

Ответы [ 2 ]

0 голосов
/ 28 апреля 2019

Это зависит от ваших вариантов использования.Я могу классифицировать как ниже.Пожалуйста, обратитесь по ссылке (https://medium.freecodecamp.org/do-we-still-need-javascript-frameworks-42576735949b)

  1. Javascript - Менее сложный
  2. Vue.js - Производительность
  3. Реакция - Производительность (vue лучше, чем реакция впроизводительность)
  4. Angular - поддержка сообщества, более зрелая структура вместо библиотеки - для ANgular 2 и выше
0 голосов
/ 28 апреля 2019

Вы можете попробовать с библиотекой Javascript Axios.Пример на стороне Javascript:

import axios from 'axios'

axios.get('/springEndpoint').then((response) => {
        console.log(response.data);
        // do something with response
    }).catch(() => {
        // do something in case of an error
    })

Пример контроллера Spring:

@RestController
public class TestController {

    @GetMapping("/springEndpoint")
    public String someEndpoint() {
        return "test response";
    }
}

Если вы ищете способ создания весеннего загрузочного веб-приложения с помощью vue.js, это может быть полезно для вас: https://blog.codecentric.de/en/2018/04/spring-boot-vuejs/

...