有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

通过GeoNetwork上的java http post请求获取XML响应

我尝试使用java http post请求自动完成我的地理网络目录。无论库是什么(io、apache commons、geotools),我都会有如下相同的html响应

<!DOCTYPE html
  SYSTEM "html">
<html ng-app="gn_login" lang="eng" id="ng-app">
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>My GeoNetwork catalogue - My organization</title>
      <meta charset="utf-8">
      <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
      <meta name="apple-mobile-web-app-capable" content="yes">
      <meta name="description" content="">
      <meta name="keywords" content="">
      <link rel="icon" sizes="16x16 32x32 48x48" type="image/png" href="../../i$
      <link href="rss.search?sortBy=changeDate" rel="alternate" type="applicati$
      <link href="portal.opensearch" rel="search" type="application/opensearchd$
      <link href="/geonetwork/static/gn_login_default.css" rel="stylesheet" med$
      <link href="/geonetwork/static/bootstrap-table.min.css" rel="stylesheet" $
      <link href="/geonetwork/static/ng-skos.css" rel="stylesheet" media="scree$
      <link href="/geonetwork/static/srv_custom_style.css" rel="stylesheet" med$
   </head>
   <body data-ng-controller="GnCatController">
      <div class="navbar navbar-default gn-top-bar" data-ng-hide="layout.hideTo$
      <div data-ng-include="'../../catalog/templates/signin.html'"></div>
      <div ng-include="'../../catalog/templates/info.html'"></div><script src="$
         <div class="alert" data-ng-hide=""><strong></strong>
         </div>
      </noscript>
   </body>
</html>

我用jetty服务器启动我的地理网络。您知道如何直接请求服务器获取XML响应吗


共 (1) 个答案

  1. # 1 楼答案

    可能您正试图向受保护的URL发出请求。您必须首先向登录服务发出请求,保留它返回的JSESSIONIDcookie,然后将其发送到您想要请求的原始服务