第十七章 源代码文件 REST API 教程(二)

网友投稿 236 2022-09-04

第十七章 源代码文件 REST API 教程(二)

文章目录

​​第十七章 源代码文件 REST API 教程(二)​​​​获取在命名空间中定义的源代码文件​​​​在命名空间中创建新文件或更新现有文件​​

第十七章 源代码文件 REST API 教程(二)

获取在命名空间中定义的源代码文件

要获取有关命名空间中源代码文件的信息:

首先,使用​​GetDocNames​​ 方法获取文件的名称。然后用​​GetDoc​​​ 方法获取一个文件的内容,也可以用​​GetDocs​​ 方法获取多个文件的内容。如果要提高应用程序的网络效率,可以保留源代码文件的名称和内容的本地缓存,并使用​​GetModifiedDocNames​​​ 方法仅获取内容发生变化的源代码文件的名称或使用带有​​If-None-Match HTTP​​​ 标头的​​GetDoc​​ 方法。

​​GetDocNames​​ 方法返回映射到命名空间的所有数据库中的所有源代码文件的名称。

{ "status": { "errors": [], "summary": "" }, "console": [], "result": { "content": [ { "name": "%Api.DocDB.cls", "cat": "CLS", "ts": "2016-08-03 20:01:42.000", "upd": true, "db": "IRISLIB", "gen": false }, ... { "name": "EnsProfile.mac", "cat": "RTN", "ts": "2003-09-19 13:53:31.000", "upd": true, "db": "INVENTORYR", "gen": false }, ... { "name": "xyz.mac", "cat": "RTN", "ts": "2016-08-11 15:05:02.167", "upd": false, "db": "INVENTORYR", "gen": false } ] }}

以下 ​​GetDoc​​​ 调用返回 ​​xyz.mac​​ 文件的内容:

"status": { "errors": [], "summary": "" }, "console": [], "result": { "name": "xyz.mac", "db": "INVENTORYR", "ts": "2016-09-14 14:10:16.540", "upd": false, "cat": "RTN", "status": "", "enc": false, "flags": 0, "content": [ "ROUTINE xyz", "xyz ;", " w \"hello\"" ] }}

在命名空间中创建新文件或更新现有文件

要在命名空间中创建新文件或更新现有文件,请使用 ​​PutDoc​​​ 方法。例如,以下 ​​REST​​​ 调用在 ​​INVENTORY​​​ 命名空间中创建一个新的 ​​xyz.mac​​​ 源代码文件,或者,如果 ​​xyz.mac​​​ 文件存在,则此调用将文件的原始定义替换为新定义。如果要更新新文件,则必须指定 ​​HTTP​​​ 标头 ​​If-None-Match​​​ 以标识文件的当前版本,或指定 ​​?ignoreConflict=1 URL​​​ 参数以绕过版本检查。有关详细信息,请参阅参考部分中的 ​​PutDoc​​。

PUT ​​Content-Type application/json​​​ 和以下 ​​JSON​​ 消息:

{ "enc": false, "content": [ "ROUTINE xyz", "xyz ;", " w \"hello\"" ]}

该调用返回以下 ​​JSON​​​ 消息。它显示源代码文件已在 ​​INVENTORYR​​​ 数据库中创建,该数据库是 ​​INVENTORY​​ 命名空间中例程的默认数据库。

{ "status": { "errors": [], "summary": "" }, "console": [], "result": { "name": "xyz.mac", "db": "INVENTORYR", "ts": "2016-09-14 14:10:16.540", "upd": false, "cat": "RTN", "status": "", "enc": false, "flags": 0, "content": [] }}

如果要更新或创建二进制文件,请为 ​​enc​​​ 指定一个真值,并将二进制内容作为二进制值的 ​​base64​​ 编码的块数组包含在内。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:关于 Nginx 0day 漏洞,需要采取哪些措施?
下一篇:消失的遗传力的进一步剖分及应用
相关文章

 发表评论

暂时没有评论,来抢沙发吧~