Клиентская сторона рендерит быстрее, чем моя загрузка данных на серверной стороне nodeJS - PullRequest
1 голос
/ 21 марта 2019

Я пытаюсь создать приложение для анализа трафика, но моя клиентская часть рендерит быстрее, чем моя загрузка данных на серверной стороне.(Более конкретно, это данные визуального распознавания, которые не отображаются в Интернете, я использую облачный сервис визуального распознавания IBM)

Могу ли я узнать, как решить эту проблему?Я застрял в этом в течение нескольких дней.

Это мой код, где я вызываю свою функцию.

fetchAPI(10).then((data) => {
var data = data["items"][0]["cameras"]
for (let i = 0; i < data.length; i++){
    image = data[i]["image"]
    images.push(image);
    coordinates.push([data[i]["location"]["latitude"], data[i]["location"]["longitude"]]);
}}).then(recognition(10, pageRender))

Здесь я делаю свое визуальное распознавание

async function recognition(res, callback){
// Fetch api to get the images to be analyse
var data = await fetchAPI(10)
var info = await data["items"][0]["cameras"]

// Loop through the images
for (let i = 0; i < info.length; i++){
    var image = await info[i]["image"]

    // Params to be analyse
    var params = await {
        url: image,
        classifier_ids: classifier_ids
    };

    // The part where it analyse the image
    await visualRecognition.classify(params, function(err, response) {
        if (err)
            console.log(err);
        else
        try{
            var status = (JSON.stringify(response.images[0]["classifiers"][0]["classes"][0]["class"], null, 2));
            var prob = (JSON.stringify(response.images[0]["classifiers"][0]["classes"][0]["score"], null, 2));
        }
        catch(error){
            status = "Error getting status"
            prob = "Error getting probability"
        }
            value.push([status, prob]);
    });
}
await callback()}

Это функция обратного вызова, которую я используюсделать мою страницу.

function pageRender(){
app.get("/", (req,res) => {
    res.render("index", {
        images: JSON.stringify(images),
        coordinates: JSON.stringify(coordinates),
        value: JSON.stringify(value),
    })
    console.log("I have finish rendering")
}) }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...