2

我在 hapi fhir 数据库上运行了一个查询,该数据库已将分页结果返回给我。根据此处的文档,我在 java 中使用 hapi base 来实际进行搜索:http: //hapifhir.io/doc_rest_client.html

    Bundle bundle = client.search().forResource(Basic.class).returnBundle(ca.uhn.fhir.model.dstu2.resource.Bundle.class).execute();
    do {

        for (Entry entry: bundle.getEntry())
            System.out.println(entry.getFullUrl());

        if (bundle.getLink(Bundle.LINK_NEXT) != null)
            bundle = client.loadPage().next(bundle).execute();
        else
            bundle = null;
    }
    while (bundle != null);

代码一直运行到获取第一个包,并按预期打印出 url,但是当它尝试执行下一个包时,我得到一个 ConnectionException '连接被拒绝:连接'。

服务器似乎仍然可以响应,但是因为我可以重新运行我的程序并返回完全相同的结果。

知道为什么连接会被拒绝吗?当我尝试从邮递员手动运行它时,我遇到了类似的问题。

4

2 回答 2

4

你在做什么当然看起来是正确的。如果您手动执行搜索(例如,使用浏览器或邮递员或其他),下一个链接会是什么样子?如果您也直接在浏览器中使用该链接,它是否也有效?

例如,如果我在我的机器上本地运行 CLI,并执行搜索,我会在响应中看到以下内容:

"link": [
   {
     "relation": "self",
     "url": "http://localhost:8080/baseDstu3/_history"
},
{
  "relation": "next",
  "url": "http://localhost:8080/baseDstu3?_getpages=d8454866-624d-4bb3-b7a0-0858e4870e7e&_getpagesoffset=10&_count=10&_pretty=true&_bundletype=history"
}
 ],

如果我将下一个链接 ( http://localhost:8080/baseDstu3?_getpages=d8454866-624d-4bb3-b7a0-0858e4870e7e&_getpagesoffset=10&_count=10&_pretty=true&_bundletype=history) 插入浏览器,我会得到下一页。

你能试试这个,看看效果如何?

于 2017-01-14T15:10:26.263 回答
0

以防万一有人偶然发现这一点。我正在进行某种重定向(由我团队的另一名成员设置)。基本上我的基本 url 是 localhost:8080,但下一个地址返回为 localhost:1080(我不完全明白为什么)。

他更改了服务器中的配置以使其不重定向。

于 2017-01-16T16:03:45.220 回答