API:Edit/zh

需要以下MediaWiki选项设置为 :  和. 見Manual:DefaultSettings.php. 该模块由ApiEditPage.php实现.

编辑令牌
要有编辑令牌才可以编辑页面. 这个令牌在所有页面中都一样，但是每次登录都会不同；它也会过期. 获取编辑令牌的首选方法取决于MediaWiki版本：


 * 版本1.24及更高版本：action=query＆meta=tokens
 * 版本1.20-1.23：action=tokens
 * 版本1.19及更早版本：action=query&prop=info

目前所有较旧的方法都可使用，但不推荐.

如果你想防止编辑冲突（这是明智的），你也需要得到最近版本的时间戳. 你可以通过下面的例子获得编辑令牌：

当使用Edit API时，请将token参数传递于最后（或者最起码地，传递于text参数的后面）. 这样，如果编辑被中断，令牌将不会被传递，编辑将失败. 这是由mw.Api自动完成的.

未注册用户
对于未注册的用户，该令牌总是存在 ，但如果将来发生更改，您可能需要明确请求该令牌.

创建或编辑页面
edit动作（ ）用于创建或编辑页面.

参数
请求头为. 您收到的令牌将以 结尾，这需要在传递之前进行URL编码（以让令牌以 结尾）.

验证码和拓展错误
如果一次编辑请求需要验证码，你将会得到类似下面的： 具体的返回信息将由使用的验证码决定. 在很多情况下，你不会得到一个数学验证码，而是一个指向一幅图片的连接（在 区域）. 当你解决了验证码，重试发送该请求（在这个例子中应带着 ）.

其他使用了APIEditBeforeSave的扩展可能会使用上述格式或通常的错误格式返回失败结果.

可能的错误
除通常错误外：

使用Ajax编辑
Below is sample code for editing a page via an Ajax request:

大文本
当文本超过 8000 字时，使用 "multipart/form-data" as it does not require escaping and will be significantly smaller than its urlencoded counterpart. Multipart has roughly 160 bytes of overhead for each 参数，so for seven 参数 that's ~1.1kb overhead. 例子: POST http://en.wikipedia.org/w/api.php HTTP/1.1 User-Agent: Bot Framework Content-Type: multipart/form-data; boundary=---8ce61ec834cf268 Host: en.wikipedia.org Cookie: Content-Length: 1348 Accept-Encoding: gzip Connection: Keep-Alive

-8ce61ec834cf268 Content-Disposition: form-data; name="action"

edit -8ce61ec834cf268 Content-Disposition: form-data; name="title" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit

Title here -8ce61ec834cf268 Content-Disposition: form-data; name="text" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit

Text here -8ce61ec834cf268 Content-Disposition: form-data; name="summary" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit

Summary -8ce61ec834cf268 Content-Disposition: form-data; name="token"

1f287ba00a908e9622045e7b18ffa352+\ -8ce61ec834cf268 Content-Disposition: form-data; name="assert"

user -8ce61ec834cf268 Content-Disposition: form-data; name="format"

xml -8ce61ec834cf268--