在管道中,然后我正在阅读文件,然后想将该内容放在Wiki页面上。
在Wiki页面上置换内容已经使用Azure DevOps API工作。我无法正确地将DE DATA遍布,仅作为一行文本,我还遇到了特殊字符的问题。”和“”。 API {“ content”:“新Wiki Content”}。我当前的代码是:
val =$(<diagrams/structurizr-Diagram1.mmd)
val2=$(printf %q "$val")
json="{ \"content\" : \""$val2"\" }"
responseCreate=$(curl -X PUT -H "Content-Type: application/json" -d "$json" \
"https://feedname:$(WIKI_TOKEN)@dev.azure.com/...)
我尝试了所有我可以在网上找到的解决方案,并且现在确实在墙上撞到了墙。我正在尝试什么?
我猜想,我可以呈现图片并上传图片,或将已知创建的文件自动上传,然后在Wikipage中插入链接。
当将“
diagrams/structurizr-Diagram1.mmd
”文件的内容传递到JSON请求主体中“content
”属性的值时,您需要将多线内容转换为一行,然后将新行逃到“\n
”。
,对于您的情况,传递到JSON请求主体的有效内容如下:
{
"content": "::: mermaid\ngraph LR\n linkStyle default fill:#ffffff\n \n subgraph diagram [\"Software System - System Context\"]\n style diagram fill:#ffffff,stroke:#ffffff\n \n 1[\"<div style='font-weight: bold'>Person1</div><div style='font-size: 70%; margin-top: 0px'>[Person]</div>\"]\n style 1 fill:#05527d,stroke:#033957,color:#ffffff\n 2[\"<div style='font-weight: bold'>Person2</div><div style='font-size: 70%; margin-top: 0px'>[Person]</div>\"]\n style 2 fill:#05527d,stroke:#033957,color:#ffffff\n 3[\"<div style='font-weight: bold'>Software System</div><div style='font-size: 70%; margin-top: 0px'>[Software System]</div>\"]\n style 3 fill:#066296,stroke:#044469,color:#ffffff\n \n 1-. \"<div>Interacts</div><div style='font-size: 70%'></div>\" .->3\n 2-. \"<div>Interacts</div><div style='font-size: 70%'></div>\" .->3\n end\n:::"
}