带有GWT Requestfactory的Http状态代码
如果我使用GWT Requestfactory,那么向客户端发送“404未找到”或“401未授权”的建议方法是什么 问候AndreasRequestFactory是一种RPC协议,而不是REST协议。因此,首先,您不会发送“404NotFound”:这意味着您的客户端应用程序甚至不知道如何与服务器通信 至于“401未经授权”,那要视情况而定带有GWT Requestfactory的Http状态代码,gwt,requestfactory,Gwt,Requestfactory,如果我使用GWT Requestfactory,那么向客户端发送“404未找到”或“401未授权”的建议方法是什么 问候AndreasRequestFactory是一种RPC协议,而不是REST协议。因此,首先,您不会发送“404NotFound”:这意味着您的客户端应用程序甚至不知道如何与服务器通信 至于“401未经授权”,那要视情况而定 如果您想保护对整个RequestFactoryServlet的访问,那么在服务器端使用servlet过滤器发送响应,并在客户端使用自定义RequestTr
- 如果您想保护对整个
的访问,那么在服务器端使用servlet过滤器发送响应,并在客户端使用自定义RequestFactoryServlet
(最简单的方法是简单地扩展RequestTransport
)来捕获响应并采取相应的行动DefaultRequestTransport
- 如果您只想保护少数方法,或者只允许特定用户访问某些方法(例如,只有管理员才允许调用方法
),那么您有多种选择,但在所有情况下,如果用户未经授权,您都不希望从客户端应用程序调用这些方法(例如,如果用户不是管理员,则不显示“删除此内容”按钮):deleteteThishing
- 在方法本身中执行此操作,并引发异常(可以使用
获取当前用户)RequestFactoryServlet.getThreadLocalRequest().getUserPrincipal()
- 使用
覆盖ServiceLayerDecorator
方法进行检查(可能基于方法本身的一些注释),并在用户未经授权的情况下调用invoke
report()
- 在方法本身中执行此操作,并引发异常(可以使用
- 如果您想保护对整个
的访问,那么在服务器端使用servlet过滤器发送响应,并在客户端使用自定义RequestFactoryServlet
(最简单的方法是简单地扩展RequestTransport
)来捕获响应并采取相应的行动DefaultRequestTransport
- 如果您只想保护少数方法,或者只允许特定用户访问某些方法(例如,只有管理员才允许调用方法
),那么您有多种选择,但在所有情况下,如果用户未经授权,您都不希望从客户端应用程序调用这些方法(例如,如果用户不是管理员,则不显示“删除此内容”按钮):deleteteThishing
- 在方法本身中执行此操作,并引发异常(可以使用
获取当前用户)RequestFactoryServlet.getThreadLocalRequest().getUserPrincipal()
- 使用
覆盖ServiceLayerDecorator
方法进行检查(可能基于方法本身的一些注释),并在用户未经授权的情况下调用invoke
report()
- 在方法本身中执行此操作,并引发异常(可以使用