如何基于java或js获取URL返回状态码

 更新时间:2019年11月28日 10:20:12   作者:农名工进城  
这篇文章主要介绍了如何基于java或js获取URL返回状态码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

这篇文章主要介绍了如何基于java或js获取URL返回状态码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

描述:使用java或者js访问某个网站,返回状态码

1.java实现

// 用getResponseCode可以获取URL返回状态码
String surl = "";
try {
      surl="你的url";
        URL url = new URL(surl);
        URLConnection rulConnection  = url.openConnection();
        HttpURLConnection httpUrlConnection = (HttpURLConnection) rulConnection;
        httpUrlConnection.setConnectTimeout(300000);
        httpUrlConnection.setReadTimeout(300000);
        httpUrlConnection.connect();
        String code = new Integer(httpUrlConnection.getResponseCode()).toString();
        String message = httpUrlConnection.getResponseMessage();
        System.out.println("getResponseCode code ="+ code);
        System.out.println("getResponseMessage message ="+ message);
        if(!code.startsWith("2")){
          throw new Exception("ResponseCode is not begin with 2,code="+code);
        }
        System.out.println(getCurDateTime()+"连接"+surl+"正常");
     }catch(Exception ex){
        System.out.println(ex.getMessage());
     }

2.js实现(成功会返回200,如果页面找不到会返回404)

function GetHttpStatusCode($url){
  $curl = curl_init();
  curl_setopt($curl,CURLOPT_URL,$url);//获取内容url
  curl_setopt($curl,CURLOPT_HEADER,1);//获取http头信息
  curl_setopt($curl,CURLOPT_NOBODY,1);//不返回html的body信息
  curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);//返回数据流,不直接输出
  curl_setopt($curl,CURLOPT_TIMEOUT,30); //超时时长,单位秒
  curl_exec($curl);
  $rtn= curl_getinfo($curl,CURLINFO_HTTP_CODE);
  curl_close($curl);
  return $rtn;
}
$url = "http://www.baidu.com";
GetHttpStatusCode($url);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 使用MyBatis进行简单的更新与查询方式

    使用MyBatis进行简单的更新与查询方式

    这篇文章主要介绍了使用MyBatis进行简单的更新与查询方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • 一文掌握Java中的JWT

    一文掌握Java中的JWT

    这篇文章主要介绍了Java中的JWT,JWT的本质就是一个字符串,它是将用户信息保存到一个Json字符串中,然后进行编码后得到一个JWT token,对JWT相关知识感兴趣的朋友一起看看吧
    2022-06-06
  • Springboot配置@Async无效的解决方案

    Springboot配置@Async无效的解决方案

    这篇文章主要介绍了Springboot配置@Async无效的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • SpringMVC和Swagger整合方法

    SpringMVC和Swagger整合方法

    Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。下面通过本文给大家分享SpringMVC和Swagger整合方法,感兴趣的朋友一起看看吧
    2017-08-08
  • Spring Boot 统一数据返回格式的解决方案

    Spring Boot 统一数据返回格式的解决方案

    统⼀的数据返回格式使⽤ @ControllerAdvice 和 ResponseBodyAdvice 的⽅式实现,下面给大家分享Spring Boot 统一数据返回格式的解决方案,感兴趣的朋友一起看看吧
    2024-03-03
  • mybatis-plus之如何实现in嵌套sql

    mybatis-plus之如何实现in嵌套sql

    这篇文章主要介绍了mybatis-plus之如何实现in嵌套sql问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • SpringSecurity集成第三方登录过程详解(最新推荐)

    SpringSecurity集成第三方登录过程详解(最新推荐)

    在ThirdAuthenticationFilter 类的attemptAuthentication()方法中,我们通过authType类型,然后创建对应的Authentication实现来实现不同方式的登录,下面给大家分享SpringSecurity集成第三方登录过程,感兴趣的朋友一起看看吧
    2024-05-05
  • 使用Mybatis对数据库进行单表操作的实现示例

    使用Mybatis对数据库进行单表操作的实现示例

    这篇文章主要介绍了使用Mybatis对数据库进行单表操作的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • SpringBoot微信扫码支付的实现示例

    SpringBoot微信扫码支付的实现示例

    这篇文章主要介绍了SpringBoot微信扫码支付的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • java SpringBoot 分布式事务的解决方案(JTA+Atomic+多数据源)

    java SpringBoot 分布式事务的解决方案(JTA+Atomic+多数据源)

    这篇文章主要介绍了java SpringBoot 分布式事务的解决方案(JTA+Atomic+多数据源),文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-08-08

最新评论