リクエスト広場

REST APIに更新リスト取得・ページ巻き戻しを追加希望

2 コメント
views
4 フォロー

フィルター機能の追加に時間がかかりそう、もしくは無理な場合としまして(sourceが公開されているようでしたら、patchを書きます)、荒らし対策としてこちらのほうで botで書き込みを監視し、条件にマッチした場合に巻き戻しを行う対処を考えております。
こちら現在の REST APIでは対応していないため、機能追加をしてくださいますようお願いします。

  • 更新リスト取得:単純にページ名と更新時刻のリストを最新n個取得できるかたちでかまいません。もし parameterを取れるのであれば diff flagなどを用意して Trueである場合には変更内容も jsonに含めていただけると最善です。
  • ページ巻き戻し:これは荒らしであると判断できる場合に現在では過去の内容を取得して新しく書くというかたちになるため、巻き戻したのか追記したのかわかりません。これは履歴管理的にも困りますので、現在差分ページにあるような巻き戻しリンクに対応した APIをお願いします。

以上、ご勘案どうぞよろしくおねがいします。

にじさんじ非公式wiki運営
作成: 2022/08/17 (水) 09:35:11
通報 ...
1
弥七 2022/08/17 (水) 20:04:43

更新リスト取得:単純にページ名と更新時刻のリストを最新n個取得できるかたちでかまいません。もし parameterを取れるのであれば diff flagなどを用意して Trueである場合には変更内容も jsonに含めていただけると最善です

REST APIでページリストが取得できます。

curl "https://api.wikiwiki.jp/<wiki-name>/pages" \
-H "Authorization: Bearer eyJ0eXA..."

ページ名とtimestampが帰ってくるのでそれをソートしたらどうでしょうか?

{
  "pages": [
    {
      "name": ":config",
      "timestamp": "2022-01-01T00:00:00+09:00"
    },
    {
      "name": "FrontPage",
      "timestamp": "2022-01-01T00:00:00+09:00"
    },
    ...
  ]
}

ページ巻き戻し:これは荒らしであると判断できる場合に現在では過去の内容を取得して新しく書くというかたちになるため、巻き戻したのか追記したのかわかりません。これは履歴管理的にも困りますので、現在差分ページにあるような巻き戻しリンクに対応した APIをお願いします。

これはちょっとわかりません。
REST APIで自動化できそうですがどうでしょう?
定期的に監視して更新があったページ内容を取得して保存、荒らしだと判断したら、荒らされる前の内容をアップする。
差分も作っておけば、いろいろできそうです。

2
にじさんじ非公式wiki運営 2022/08/19 (金) 17:00:40

コメントありがとうございます。REST APIのリストについては見落としておりました。ただ情報的に少なすぎて書き込みに関する user-cookie, user-ip, user-ua等について各個に再度読み込むのもリクエスト過多になるかと思いますので、そういった情報も付与していただける引数がAPIに追加されると管理的には助かります。

2番めについてもアップロードと巻き戻しでは差分(バックアップ)の履歴的に違ってきますので、巻き戻しを APIに追加していただけると助かります。

昨今1時間あたり10を越える通報があることもあり、荒らし行為に難儀しております。このあたりできるだけ省人化を図れないかといろいろ工夫を考えております。攻撃者の側もある程度知識がある人物の場合、現状のフィルタ実装では容易にかいくぐれてしまいますので、人的コストが馬鹿にならず、できるだけ編集時情報をプラスしたかたちで書き込み情報を取得できると助かります。

×
いいね! ボタンみたいなやつです。使い方はこちら 絵文字でリアクションしよう!