L'API n'accepte pas les tableaux MarkDown

Nous utilisons la solution hébergée.

Description du problème : Utiliser l’API pour publier des messages. Cela a fonctionné parfaitement pendant les 4 derniers mois (la dernière fois étant le lundi 11/03/19) jusqu’à aujourd’hui. J’ai créé quelques tests très simples pour isoler le problème :

Données envoyées via l’API :

Col1 Col2
Col1data Col2data

Image du résultat :

Remarquez le séparateur d’en-tête/données en surbrillance au début. D’une manière ou d’une autre, il a été modifié de trois tirets à une ligne pleine. Le deuxième séparateur n’a pas été modifié. Je pense que c’est le problème. Parce que le séparateur de la première colonne n’est plus trois tirets, il n’est plus interprété comme un tableau Markdown. Je ne sais tout simplement pas ce qui cause le changement des trois tirets en ces caractères de ligne.

Je peux (dans une certaine mesure) reproduire ce « changement des tirets en ligne » lors d’une publication manuelle également. Si je saisis ceci (notez que le séparateur de la deuxième colonne est trois tirets)… eh bien, c’est le cas jusqu’à ce que la publication soit effectuée…
|Col1|Col2|
|___|—|
|Col1data|Col2data|

La publication affichera en fait le deuxième séparateur sous forme de ligne pleine maintenant. Comme je suis un nouvel utilisateur sur ce site, il indique que je ne peux pas publier plus de deux images (hein ?), donc je ne peux pas montrer l’image exacte, mais voici une URL de test : https://try.discourse.org/t/test-table-cause-seeing-problem/1335

Je pense que ce qui cause ce changement des tirets en caractère de ligne affecte également les trois tirets dans l’API. Mais ce n’est qu’une hypothèse.

Quelqu’un peut-il s’il vous plaît aider à éclaircir cela ? 1) Pourquoi cela se produit-il ? 2) Quelque chose a-t-il changé récemment qui aurait pu causer cela ?

Try disabling the setting enable markdown typographer

Thanks for the quick reply Rafael. That definitely got back the 3 dashes, but it still displays as plain text, instead of converting it to a table, like I would expect. So, quite possibly, what I thought was the issue was not :-(. Any other suggestions as to why this may not be displaying correctly as a table after posting thru the API?

image

Can you share the exact content of the post sent to the API here?

Not really - it’s a a PS script…the first line tho shows the data being passed in, and the result shown above…

 $HTMLTableAll = '|Col1|Col2|<br>|---|---|<br>|Col1data|Col2data|'

#Create Discourse JSON Body for posting new Topic
$DiscourseBodyJSON = @{}
$DiscourseBodyJSON.Add("title","Test - please ignore")
$DiscourseBodyJSON.Add("raw",$HTMLTableAll)
$DiscourseBodyJSON.Add("category",$TFOCategoryID)
$DiscourseDevNoteJSON = $DiscourseBodyJSON | ConvertTo-Json
$URI = $TWDomain + "posts.json" + $DiscourseCredsURI

Show-Log -LogType Txt -LogText $URI
Show-Log -LogType Txt -LogText $HTMLTableAll

$PostNote = @{Method     = 'POST'
             Uri         = $URI  
             ContentType = "application/json"
             Headers     = @{Authorization = "Basic " + [System.Convert]::ToBase64String($DiscourseUserEnc)}
             Body        = $DiscourseDevNoteJSON
            }

Result:

Actually, I have this working again. I think that settings change actually did fix this issue. Thanks for the help!

Only thing that jumps to me is that we use \n for line breaks in the API instead of <br>.

Anyway, since it’s working already, keep going.