Ptt-official-app / Ptt-backend

PTT APP 的後端
BSD 3-Clause "New" or "Revised" License
208 stars 68 forks source link

[BUG] C6-1-1 發文時,在 raw 欄位的格式錯誤 #283

Closed PichuChen closed 2 years ago

PichuChen commented 3 years ago

發生了什麼事? / The Problem

  1. 在發出新文章後的 raw 應該要有發文時應有的 作者 標題 時間 等列,以及發信站等資訊,這些東西應該要在 Usecase 當中被設定,而不是交由 Client 自由設定,自由設定的部分應該要在編輯文章後才能做自由設定(但即便如此,最後面還是需要附加修改時間和修改IP等資訊)
  2. 回傳的 raw 欄位的資料應該以 Base64 編碼,目前是沒有特別編碼的。

如何重現 / To Reproduce

請參考 testing-script 的 C6-1-1.sh

  1. 取得可以在 test 版發文的 Access Token 權限
  2. 送出 curl -v -s http://localhost:8081/v1/boards/test/articles -H "Authorization: bearer $ACCESS_TOKEN" -d 'action=add_article' --data-urlencode 'title=[測試] test0904' --data-urlencode 'article=12345'

可以看到回傳的結果 raw 欄位並沒有預期的作者等列,而且不是以 Base64 編碼

預期的行為 / Expected behavior

  1. raw 回傳欄位應要有作者等列 https://www.ptt.cc/bbs/SYSOP/M.1577824363.A.5DA.html 截圖 2021-09-05 下午11 13 16

  2. raw 欄位應以 base64 編碼

螢幕截圖 / Screenshots

截圖 2021-09-05 下午11 10 06

開發環境 / Environment

Package version: cb8fb31f7a480dce1f29406be6c6d215d365c37e

kyho4515 commented 3 years ago

可以詳細說一下raw的格式是怎麼樣嗎? 例如把parsed裡的部分dump成base64?

y2468101216 commented 3 years ago

這個 bug 分成兩個問題,一個是 raw 沒有編譯成 base64,一個是不符合 ptt 發文格式

karta0807913 commented 3 years ago

@PichuChen 我嘗試了一下想要解決這個問題 (#291) 不知道這樣是否是你期望的樣子