RMI и исключения

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
18
задан Bill the Lizard 18 September 2012 в 14:06
поделиться

4 ответа

Нормально бросать любой вид исключения (даже пользовательские), просто удостоверьтесь, что упаковали их в Вашем экспорте .jar файл (при использовании версии Java, где необходимо сделать это вручную).

я не разделил бы RemoteException на подклассы, все же. Они обычно бросаются, если существует некоторая проблема соединения. По-видимому, Ваш клиент обработает проблемы соединения по-другому по сравнению с другими типами проблем. Вы могли бы сказать пользователю, что сервер снижается, когда Вы ловите RemoteException или соединяетесь с другим сервером. Для StudentNotFoundException Вы, вероятно, хотите дать пользователю другой шанс при вводе студенческой информации

12
ответ дан 30 November 2019 в 08:43
поделиться

Да, возможно выдать исключения через RMI.

нет, это не хорошая идея расшириться RemoteException для создания отчетов об отказах приложения. RemoteException сигналы отказ в механизме дистанционной работы, как отказ сети. Используйте соответствующее исключение, расширяясь java.lang.Exception сами при необходимости.

Для более подробного объяснения, взгляд на другой из моих ответов . Короче говоря быть осторожным относительно объединения в цепочку исключений при использовании RMI.

6
ответ дан 30 November 2019 в 08:43
поделиться

я хочу быть в состоянии выдать исключение по RMI (действительно ли это возможно?)

Да. Что-либо может быть сериализировано, даже исключения. Я думаю, что само Исключение реализует сериализуемый.

у меня есть простой сервер, который преподносит студентов, и я имею, удаляют метод, который, если студент не существует, я хочу выдать пользовательское исключение StudentNotFoundException, который расширяет RemoteException (действительно ли это - хорошая вещь сделать?)

у меня был бы он, расширяют Исключение лично. Вашими исключениями являются Ваши исключения, и RemoteExceptions для вещей, которые идут не так, как надо с RMI по причинам возможности соединения.

3
ответ дан 30 November 2019 в 08:43
поделиться

Нет никакой потребности в Ваших исключениях для расширения RemoteException.

(Стоит отметить что конкретные типы исключительной ситуации брошенная потребность быть в кодовых базах, используемых и сервером и клиентом.)

2
ответ дан 30 November 2019 в 08:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: