使用 GitHub 的 REST API 更新带有多行描述的版本
Using GitHub's REST API to update a release with a multi-line description
我正在使用 JSON 使用该版本的提交列表更新 GitHub 版本的描述。
问题是,如果描述有换行符,命令会失败:
Stdout: {
Stdout: "message": "Problems parsing JSON",
Stdout: "documentation_url": "https://developer.github.com/v3"
Stdout: }
我让它工作的唯一方法是用 space:
替换换行符
def API_JSON = sprintf ('{"body": "%s"}', description.replace('\n',' '));
但是,如果没有换行符,描述将难以阅读。有没有办法使用 API/JSON 设置 GitHub 版本的描述并保留换行符?
找出答案,换行:
def API_JSON = sprintf ('{"body": "%s"}', description.replace('\n','<br />'));
希望这对其他人有帮助:)
你也可以使用\r\n
,只是不支持\n
curl -i -X 'POST' https://api.github.com/repos/:owner/:repo/releases/?access_token=:token' -d
{
"body": "My\r\nName"
}
我正在使用 JSON 使用该版本的提交列表更新 GitHub 版本的描述。
问题是,如果描述有换行符,命令会失败:
Stdout: {
Stdout: "message": "Problems parsing JSON",
Stdout: "documentation_url": "https://developer.github.com/v3"
Stdout: }
我让它工作的唯一方法是用 space:
替换换行符def API_JSON = sprintf ('{"body": "%s"}', description.replace('\n',' '));
但是,如果没有换行符,描述将难以阅读。有没有办法使用 API/JSON 设置 GitHub 版本的描述并保留换行符?
找出答案,换行:
def API_JSON = sprintf ('{"body": "%s"}', description.replace('\n','<br />'));
希望这对其他人有帮助:)
你也可以使用\r\n
,只是不支持\n
curl -i -X 'POST' https://api.github.com/repos/:owner/:repo/releases/?access_token=:token' -d
{
"body": "My\r\nName"
}