Как отправить сообщение об ошибке с сервера на клиент? - PullRequest
0 голосов
/ 28 октября 2019

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

Вот пример запроса из моего файла server.js

app.get('/assign*', (request, response) => {
    var baseurl = 'https://OURACC.nocrm.io/api/v2/'
    var apikey = crmkey;

    var pathname = request.url; // retrieves the requested pathname (ie, /crm/path)
    pathname = pathname.split('?');
    pathname = pathname[0].split('/')
    var parameters = request.query.params;
    var path = pathname[2]; // gets request path for the crm

   var lead_id = parameters.lead_id
    var user_id = parameters.user_id

    var params = {
        user_id: user_id
    }

    if(path === 'leads'){

            axios.post(baseurl + path + '/' + lead_id + '/assign',
                params
            ,{
                headers: {'X-API-KEY': apikey, content_type: "json", accept: "application/json"} 
            }).then(function(res){
                response.send(res.data);
            }).catch(function(error){
                console.log("ERROR in /assign/leads/{id}/assign" + error);
            })

    }

})

Вот как выглядит вызов этого запроса на стороне клиента

 $.get('/assign/leads', {params: data}).then(response => {
                console.log(response);
            }).catch(error => {
                console.log(error);
            })

Я пробовал эту сторону сервера

response.send(error)

но это не возвращает мне ничего, что я ожидал на стороне клиента.

Я уверен, что это что-то простое, но я не мог найти много онлайн об этом,спасибо.

Ответы [ 2 ]

1 голос
/ 28 октября 2019

Если я правильно прочитал ваш код, просто поместите response.send(yourErrorMessage) в блоке catch

0 голосов
/ 28 октября 2019

Вы должны указать код ответа. Например:

res.status(400);
res.send('None shall pass');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...