Recupero delle risposte di primo livello su un argomento

Ho un requisito in cui devo recuperare tutte le risposte di primo livello pubblicate su un argomento. Ora, quando creo un nuovo argomento, viene creato anche un post. Per creare una risposta di primo livello sull’argomento, effettuo la seguente chiamata API:

POST http://discourse-url/posts/
{
“raw”: “Questa è una risposta di primo livello su un argomento”,
“topic_id”: 1234,
“reply_to_post_number”: null
}

Per recuperare le risposte di primo livello, effettuo la chiamata seguente utilizzando post_id come ID del primo post creato per l’argomento. Questo post ha il post_number impostato su 1.

GET http://discourse-url/posts/{post_id}/replies.json

Tuttavia, questo restituisce un array vuoto. Questo è comprensibile, poiché Discourse tratta le risposte di livello superiore su un argomento come post e non come risposte. Nella terminologia di Discourse, le “risposte” sono pubblicate sui post e i “post” sono pubblicati sugli argomenti.

Ho trovato una soluzione alternativa per lo stesso problema. Invece di inviare reply_to_post_number come null, se lo invio come 1, la chiamata API per le risposte funziona correttamente. Di seguito è riportato un esempio di richiesta:

POST http://discourse-url/posts/
{
“raw”: “Questa è una risposta di primo livello su un argomento”,
“topic_id”: 1234,
“reply_to_post_number”: 1
}

Ora posso recuperare le risposte di primo livello per questo argomento effettuando la seguente chiamata API:

GET http://discourse-url/posts/{post_id}/replies.json

Seguendo la risposta qui: Post vs Risposte vs Argomenti, ritengo di aver apportato una modifica fondamentale alla struttura dei post in Discourse.

La mia domanda è: questa modifica può interrompere altre funzionalità in Discourse? Attualmente non vedo problemi sul sito web con questa modifica. Ma c’è qualcosa che potrei aver trascurato e di cui dovrei stare attento?

2 Mi Piace

Could you please help me understanding the side effects of converting posts to replies by changing reply_to_post_number as 1 instead of null?