2016-11-26 11 views
2

Confluence wikiページを簡単に作成して更新できます。しかし、単なる文字列以上で更新しようとするとエラーが発生します。Confluence Rest Updateページから

Markdownで書式化されたgitリポジトリのドキュメントがあります。レガシニーズのために、私はpandocを使用してこれらを文書化システムに展開するための言葉に変換します。私はConfluenceに移行しているので、wikiページとして更新を展開したいと思っています。

私は<p>this is test content</p>にコンテンツを設定した場合、それは正常に動作ページID、バージョン、およびタイトル

echo "update page ${title} - ${pagid}/${pagver}" 
content=$(pandoc -t HTML ${file}) 

json="{" 
json+='"id":"'${pagid}'","title":"'${title}'","type":"page",' 
json+='"space":{"key":"'${SPACE}'"},' 
json+='"version":{"number":"'${pagver}'"},' 
json+='"body":{"storage":{"value":"'${content}'","representation":"storage"}}' 
json+="}" 

${curlcmd} -n -X PUT -H 'Content-Type: application/json' --data-raw "${json}" ${apilb}/content/${pagid} 2>/dev/null 

を持っています。しかし、複雑なHTMLはこのエラーを取得します。

{"statusCode":500,"message":"org.codehaus.jackson.JsonParseException: Illegal unquoted character ((CTRL-CHAR, code 10)): has to be escaped using backslash to be included in string value\n at [Source: [email protected]; line: 1, column: 157]"} 

は、ConfluenceのWikiページを更新するために、ファイルの出力を送信するためのより良い方法はありますか?

答えて

0

私はConfluenceのコマンドラインインタフェース(CLI)でstorePageをチェックアウトをお勧めします:

https://bobswift.atlassian.net/wiki/display/CSOAP/Documentation#Documentation-runFromAttachmentList

https://marketplace.atlassian.com/plugins/org.swift.confluence.cli/cloud/overview?src=sidebar

あなたの前にいない場合は、この無料の歩道を得ることができる必要があります。

+1

私はそれを試してみましょう。 APIは移植性が高いと考えていましたが、実際のソリューションはさらに優れています。 :) – TheChuckMo

関連する問題