文件内容到Blob字符串转换

时间:2019-05-21 14:30:20

标签: linux rest shell blob mantis

我需要通过REST API在MantisBT中创建附件问题,就像在这里写的那样: https://documenter.getpostman.com/view/29959/mantis-bug-tracker-rest-api/7Lt6zkP?version=latest#2d3878c7-4195-42f7-53b7-9cc11f7501f4

如何将本地文本文件内容转换为Blob字符串?

我正在Linux CentOS 7上运行,并且需要在本地进行,而无需使用任何浏览器或人工交互,而只是完全自动化。

我制作了一个小的Python脚本,将文件内容存储在json属性中,但是我需要具有此内容的BLOB表示形式。

import json 

reportpath = '/var/lib/jenkins/jobs/SimplePipeline/workspace/reports/CompilationReport.txt'

compilReportFile = open(reportpath, 'r')
compilContent = compilReportFile.read()
compilReportFile.close()

with open('/home/Jenkins/PFE/Static/newMantisRequestBody.json', 'r') as file:
     json_data = json.load(file)
     json_data["description"] = compilContent
with open('/home/Jenkins/PFE/Static/newMantisRequestBody.json', 'w') as file:
    json.dump(json_data, file, indent=2)

我希望以这样的结尾:

"files": [
        {
            "name": "test.txt",
            "content": "VGhpcyBpcyBhIFRFU1QuDQpUaGlzIGlzIGEgVEVTVC4NClRoaXMgaXMgYSBURVNULg0KVGhpcyBpcyBhIFRFU1QuDQpUaGlzIGlzIGEgVEVTVC4="
        }
    ]

或者,现在我只能这样做:

  "description": "MY FILE CONTENT STRING HERE"

你们有个主意吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

实际上,我需要先将文件内容转换为 Base64 字符串,然后再将其插入到Json中。

如果需要更高的精度,请参见上面的 TMS的注释。

再次感谢您!