API:令牌

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page API:Tokens and the translation is 94% complete.

Other languages:
Deutsch • ‎English • ‎dansk • ‎español • ‎français • ‎polski • ‎português • ‎română • ‎sicilianu • ‎русский • ‎ไทย • ‎中文 • ‎日本語 • ‎한국어
MediaWiki版本: 1.24

API:Tokens模块提供数据修改操作所需的令牌,例如记录、编辑或移动页面,以及观察或巡查更改。 对于每个操作,您需要特定类型的令牌。 例如:如果您想通过Action API登录Wiki网站,则需要使用“login”类型的令牌才能继续。

API文档




meta=tokens

(main | query | tokens)

Gets tokens for data-modifying actions.

Parameter:
type

Types of token to request.

Values (separate with | or alternative): createaccount, csrf, deleteglobalaccount, login, patrol, rollback, setglobalaccountstatus, userrights, watch
Default: csrf
Examples:
Retrieve a csrf token (the default).
api.php?action=query&meta=tokens [open in sandbox]
Retrieve a watch token and a patrol token.
api.php?action=query&meta=tokens&type=watch|patrol [open in sandbox]

例子

获取请求

回应

{
    "batchcomplete": "",
    "query": {
        "tokens": {
            "logintoken": "9ed1499d99c0c34c73faa07157b3b6075b427365+\\"
        }
    }
}

示例代码

Tokens.py

/* 

 #!/usr/bin/python3

"""
    tokens.py

    MediaWiki Action API Code Samples
    Demo of `Token` module: Fetch token of type `login`
    MIT license
"""

import requests

S = requests.Session()

URL = "https://mediawiki.org/w/api.php"

PARAMS = {
    'action':"query",
    'meta':"tokens",
    'type':"login",
    'format':"json"
}

R = S.get(url=URL, params=PARAMS)
DATA = R.json()

LOGIN_TOKEN = DATA['query']['tokens']['logintoken']

print(LOGIN_TOKEN)

可能的错误

代码 信息
Unrecognized value for parameter "type": xxx Token type 'xxx is not valid

参数历史

  • v1.27: Introduced login, createaccount

参见