я получаю сообщение об ошибке 404 при отправке запроса на сервер api - PullRequest
0 голосов
/ 05 ноября 2018

Я создал пользовательскую конечную точку для моего сервера API, которая удаляет один тест слуха:

Account.deleteSingleHearingTest = function (req, callback) {
        // console.log('accounts.js: deleteSingleHearingTest: are we being reached????', req)
        Account.findById(req.accessToken.userId)
            .then(account => {
                if (!account) {
                    throw new Error('Cannot find user');
                }
                console.log('account.js: deleteSingleHearingTest: req.body.hearingTestId    N: ', req.body.hearingTestId);
                return app.models.HearingTest.updateAll({ accountId: account.id, id: req.body.hearingTestId }, { isDeleted: new Date() });

            })
            .then(() => {
                callback(null);
            })
            .catch(error => {
                callback(error);
            });
    }

    Account.remoteMethod(
        'deleteSingleHearingTest', {
            http: {
                path: '/deleteSingleHearingTest',
                verb: 'post'
            },
            accepts: [
                { arg: 'req', type: 'object', description: 'removes a single hearing test', http: { source: 'req' } }
            ],
            description: 'this is the end point for a single delete',
            returns: {}
        }
    );

Я также обновил acls в account.json:

{
      "accessType": "EXECUTE",
      "principalType": "ROLE",
      "principalId": "$authenticated",
      "permission": "ALLOW",
      "property": "deleteSingleHearingTest"
    }

Используя Почтальон, я сделал POST-запрос к адресу сервера, который выглядит примерно так:

https://xxx.xxxxxxxx.com/api/Accounts/deleteSingleHearingTest?access_token=XXXXXXXXXXXXXXXXXKyBdxkwxm5s8TSceMgclvXjjrTnyn3UJWIa

Ответ, который я получаю от Почтальона, - 404 с прикрепленным сообщением

«Общий класс \« Учетная запись \ »не имеет методов обработки POST / deleteSingleHearingTest? Access_token = XXXXXXXXXXXXXXXXXXqAoKyBdxkwxm5s8TSceMgclvXjjrTnyn3UJWIa",

Странно то, что этот метод работал две недели назад, когда я впервые создавал, единственное отличие заключалось в том, что я работал на сервере локально.

1 Ответ

0 голосов
/ 05 ноября 2018

Мне нужно было перезапустить сервер, чтобы можно было использовать новые методы. Для 1 человека, который действительно читает это. Для перезагрузки сервера команда pm2 start all

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