Что нужно сделать на бэкэнд-сервере, а что на клиенте - PullRequest
0 голосов
/ 20 июня 2019

У меня есть ситуация,

Мне нужно загрузить некоторые данные, скажем, X гигов (огромные данные) на клиентской машине, используя нативный браузер js.Затем мне нужно выполнить вычислительные задачи с обширными заданиями (например, tenorFlow) на клиенте и, наконец, показать результаты для реального использования.

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

Если кто-то может предложить конец 2, то это спасет мою жизнь.

Заранее спасибо.

1 Ответ

0 голосов
/ 20 июня 2019

Существует несколько способов связи между клиентом и сервером.

1

Первый - это более традиционный способ отправки xhr-запросов от клиента, ожидающего ответа.

На сервере:

app.post('/path', (req, res) => {
    const json = req.body;
    //do work
    const resp = {some: 'data'};
    res.json(resp);
}

На сайте

fetch('/path', {
  method: 'post',
  body: JSON.stringify(data),
  headers: { 'Content-type': 'application/json' }
})
.then(res => res.json()) // get json data out of response object
.then(json = > {
    // do something with response json
}

2

Этот второй метод использует пакет под названием Socket.IO для связи через веб-сокеты. Как клиент, так и сервер могут отправлять и прослушивать определенные события, используя следующий простой шаблон.

socket.emit('event_name', optional_json);
socket.on('event_name', res => useResponse(res));

Вы можете посмотреть на эти ресурсы, чтобы узнать об этих методах связи между клиентом и сервером:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...