API:Edit - Rollback/ja
From MediaWiki.org
| このページは MediaWiki API ドキュメントの一部です。 |
MediaWiki version: 1.12
Contents |
[edit] ロールバック
ページをロールバックすることとは一人のユーザによる編集の一連の最後をundoすることを意味します。言い換えると、 ロールバックは誰かに違うように変更されたリビジョンに遭遇するまでリビジョンの後のリビジョンをundoすることを続けます。
この機能はグラフィカルインターフェイスの[rollback]によって提供されたものに対して理想的です。
ロールバックのリビジョンはは細部の編集としてマークされます。オプションとして、ロールバックとロールバックされる編集の両方はbotの編集としてマークでき、デフォルトでSpecial:Recentchangesからそれらを隠すことができます。
[edit] トークン
ページをロールバックするために、rollbackトークンが必要です。他の多くのトークンとは異なり、rollbackトークンはユニバーサルではありません: それらはすべてのログインに対してのみ異なりませんが、ページのタイトルと編集がロールバックされたユーザの名前にも依存します。rollbackトークンは次のように取得できます: rollbackトークンを取得する
<?xml version="1.0" encoding="utf-8"?> <api> <query> <pages> <page pageid="5" ns="0" title="Main Page" rollbacktoken="094a45ddbbd5e90d55d79d2a23a8c921+\"> <revisions> <rev revid="20" user="Catrope" timestamp="2007-09-03T20:32:20Z" /> </revisions> </page> </pages> </query> </api>
[edit] ページをロールバックする
ページをaction=rollbackでロールバックできます。
[edit] パラメータ
- title: ロールバックしたいページ。
- token: 以前のリクエストで取得されたトークン。'+'を'%2B'にurlencodeすることに注意して下さい
- user: 最後のリビジョンの著者。
- summary: 編集の要約(オプション)。設定されていない場合、デフォルトの要約が使われます。
- markbot: 設定されていない場合、ロールバックとロールバックされるリビジョンの両方はbotの編集としてマークされます。
[edit] サンプルのリクエスト
Main Pageへのユーザ名の編集を、デフォルトの要約付きでロールバックしbotの編集としてマークする
<?xml version="1.0" encoding="utf-8"?> <api> <rollback title="Main Page" pageid="5" summary="Reverted edits by [[Special:Contributions/Username|Username]] ([[User talk:Username|Talk]]); changed back to last version by [[User:PreviousEditor|PreviousEditor]]" revid="28" old_revid="27" last_revid="20" /> </api> >
[edit] 返されるフィールド
- revid: ロールバックのリビジョンID。
- old_revid: ロールバックされた最初の(最新の)リビジョンのリビジョンID。
- last_revid: ロールバックされた最後の(最も古い)リビジョンのリビジョンID。
ロールバックがページを変更しない場合、新しいリビジョンは作られません。この場合、revidはord_revidと等しくなります。
[edit] 起こり得るエラー
通常のものに加えて以下のものがあります:
- code: notitle
- info: titleパラメータを設定しなければなりません
- code: nouser
- info: userパラメータを設定しなければなりません
- code: notoken
- info: tokenパラメータを設定しなければなりません
- code: alreadyrolled
- info: ロールバックを使用とするページは既にロールバックされていました
- code: onlyauthor
- info: ロールバックしようとしたページは筆者が1人しかいません