API-маршруты следует размещать в api.php, а не в web.php
Проблема с размещением API-маршрутов в web.php заключается в том, что эти маршруты используют промежуточное веб-программное обеспечение, которое включает в себя материал как защита CSRF.
Ваше изображение почтальона не очень помогает, но я вижу, что вы получаете заголовок «Страница истекла», и я предполагаю, что проблема в CSRF.
Таким образом, самое простое решение этой проблемы - разместить маршруты API в api.php.
Маршруты здесь начинаются с префикса 'api /', поэтому в этом случае новый URL будет выглядеть примерно так:
DELETE | http://127.0.0.1:8000/api/article/2
Нормально бросать любой вид исключения (даже пользовательские), просто удостоверьтесь, что упаковали их в Вашем экспорте .jar файл (при использовании версии Java, где необходимо сделать это вручную).
я не разделил бы RemoteException на подклассы, все же. Они обычно бросаются, если существует некоторая проблема соединения. По-видимому, Ваш клиент обработает проблемы соединения по-другому по сравнению с другими типами проблем. Вы могли бы сказать пользователю, что сервер снижается, когда Вы ловите RemoteException или соединяетесь с другим сервером. Для StudentNotFoundException Вы, вероятно, хотите дать пользователю другой шанс при вводе студенческой информации
Да, возможно выдать исключения через RMI.
нет, это не хорошая идея расшириться RemoteException
для создания отчетов об отказах приложения. RemoteException
сигналы отказ в механизме дистанционной работы, как отказ сети. Используйте соответствующее исключение, расширяясь java.lang.Exception
сами при необходимости.
Для более подробного объяснения, взгляд на другой из моих ответов . Короче говоря быть осторожным относительно объединения в цепочку исключений при использовании RMI.
я хочу быть в состоянии выдать исключение по RMI (действительно ли это возможно?)
Да. Что-либо может быть сериализировано, даже исключения. Я думаю, что само Исключение реализует сериализуемый.
у меня есть простой сервер, который преподносит студентов, и я имею, удаляют метод, который, если студент не существует, я хочу выдать пользовательское исключение StudentNotFoundException, который расширяет RemoteException (действительно ли это - хорошая вещь сделать?)
у меня был бы он, расширяют Исключение лично. Вашими исключениями являются Ваши исключения, и RemoteExceptions для вещей, которые идут не так, как надо с RMI по причинам возможности соединения.
Нет никакой потребности в Ваших исключениях для расширения RemoteException
.
(Стоит отметить что конкретные типы исключительной ситуации брошенная потребность быть в кодовых базах, используемых и сервером и клиентом.)