之前我们通过Web Service(SOAP)API与XTRF集成。不幸的是我没有参与那个开发,所以我现在只能告诉我在源代码中看到的内容。看来,在该版本中有一个Partner Service API(名称空间:http://www.xtrf.eu/TranslationManagement/PartnerWSAPI),它有一个名为“createSimpleProject”的服务(类型:http://www.xtrf.eu/PartnerWSAPI/createSimpleProject)。在此服务的请求对象中,有一个名为“files”的字段,其中包含“WorklowFile”类型的对象。我们在这里设置
......我的理解是我们不必直接将文件内容发送给XTRF;相反,我们只发送了一个指向该文件的URL,XTRF为自己下载了该文件以供进一步使用。
我们使用的生成的Java存根的示例:
SoapConnection connection = getConnection(null);
SimpleProject simpleProject = new SimpleProject();
/* Setting all other fields. */
WorkflowFile file = new WorkflowFile();
file.setCategory(WorkflowFileCategory.Workfile);
file.setName("veryImportant.xlf");
file.setUrl("http://example.com/xliff/file");
List<WorkflowFile> files = simpleProject.getFiles();
files.add(file);
simpleProject.setFiles(files);
String projectId = connection.createSimpleProject(simpleProject).getProjectId();
现在我们尝试使用REST API(特别是Customer API)与XTRF集成,我们需要调用引号创建服务(POST /引号)来完成我们的开发任务。文档提示,首先我们需要使用服务POST / system / session / files在POST请求中使用multipart / form-data编码将XLIFF文件的内容直接发送到XTRF。如果我理解正确,只传递一个URL就无法使用此服务,我们需要在POST请求的有效负载中发送XLIFF的全部内容;但是,我们的应用程序有严格的限制,并且适用于大型XLIFF文件,我们很可能会超出限制。
(我尝试将URL传递给引用创建服务,类似于我们之前对服务的SOAP版本所做的操作,但我收到了一条错误,说明找不到资源。)
所以我的问题是,如果客户REST API中有一种方法只能将指向XLIFF文件的链接发送到XTRF,那么XTRF会自行下载文件,从而解决我们系统的限制吗?