gpt4 book ai didi

jSTL - c :import or c:url - specify a timeout value

转载 作者:行者123 更新时间:2023-12-01 01:38:17 25 4
gpt4 key购买 nike

我想使用 c:import 或 c:url 来获取页面(广告服务器)的内容。此外,我需要指定一个超时时间,如果调用超时或页面不可访问,我需要一些默认文本作为我的值返回。

是否有一个 jSTL 标签库来做到这一点?还是我需要自己创建?

最佳答案

的种类。

c:import 打开一个到服务器的套接字并简单地返回连接的作用(在你的情况下是原始 html)。如果服务器返回的页面是 404,那么这就是将显示的内容,如果是 500,那么您将获得该错误页面。

因为它是一个套接字,所以它可以访问所有套接字错误。
对于超时:

 java.net.ConnectException: Operation timed out    

未知主机:
 java.net.UnknownHostException: www.googasdasdasdassdle.com

这意味着您可以将导入包装在 catch 语句中并在页面上处理。
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<c:catch var="socketExceptionVariable">
<c:import url="www.googasdasdasdassdle.com"/>
</c:catch>

<c:if test="${socketExceptionVariable != null}">
<p>There was an error here</p>
<c:out value="${socketExceptionVariable}"/>
</c:if>

如果导入发生,那么它会按预期工作,但如果出现问题(任何事情),则会显示您的错误页面。

您可以编写自己的导入标签,但它封装了这一点,但与此解决方案相比,它的工作量相当大。

关于jSTL - c :import or c:url - specify a timeout value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/372712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com