我按照here显示的演示。一切都在演示中运行良好。当我尝试使用我的发现集合时,我的工作空间是按照演示链接中提到的相同步骤创建的,那么我将从对话中获得所有答案,但不是从发现中获得。
我通过在发现服务中上传各种文档和JSON对此进行了测试,但仍然无法从发现服务中获取,而且我的日志中也没有出现任何异常或错误。
我使用的是上面演示URL中提供的相同示例应用程序文件夹,我只更改了Workspace JSON和环境变量。
答案 0 :(得分:2)
如果只更改工作区,则只会使用“对话”,因为Workspace_id来自对话服务。
要从IBM Bluemix使用Discovery服务,您需要在代码内或 .env 文件中设置变量。
在您的服务中点击:
之后,将显示3个选项,点击“服务凭据”
使用您的凭据和EnviromentID
将代码与发现对话(Java)中的代码替换为。我在每个选项中附加了链接。
您在访问Discovery时可以看到EnviromentID
,点击某个集合,在这种情况下,将显示在API信息中:
<强> Code 强>
Discovery discovery = new Discovery("2016-12-01");
discovery.setEndPoint("https://gateway.watsonplatform.net/discovery/api/v1");
//username and password from Service Credentials
discovery.setUsernameAndPassword("{username}", "{password}");
//enviroment id from your document within your Discovery Service
String environmentId = "{environment_id}";
GetCollectionsRequest getRequest = new GetCollectionsRequest.Builder(environmentId).build();
GetCollectionsResponse getResponse = discovery.getCollections(getRequest).execute();
.env file:
在server.env文件的“发现”部分中。
填写“密码”字段。
填充“用户名”字段。
添加您从发现用户界面中复制的COLLECTION_ID和ENVIRONMENT_ID
查看此发现服务的官方文档API Reference。