MediaWiki API 說明
此頁為自動產生的 MediaWiki API 說明文件頁面。
說明文件與範例:https://www.mediawiki.org/wiki/API
action=clientlogin (login)
(main | clientlogin)
- 此模組僅接受 POST 請求。
- 来源:MediaWiki
- 许可协议:GPL-2.0-or-later
使用交互式流登录wiki。
使用此模組的一般程式是:
- 通過amirequestsfor=login取得來自action=query&meta=authmanagerinfo的可用欄位,和來自action=query&meta=tokens的login令牌。
- 向用戶顯示欄位,並獲得其提交的內容。
- 提交(POST)至此模組,提供loginreturnurl及任何相關欄位。
- 在回应中檢查status。
- 如果您收到了PASS(成功)或FAIL(失敗),則認為操作結束。成功與否如上句所示。
- 如果您收到了UI,向用戶顯示新欄位,並再次獲取其提交的內容。然後再次使用logincontinue,向本模組提交相關欄位,並重復第四步。
- 如果您收到了REDIRECT,將使用者指向redirecttarget中的目標,等待其返回loginreturnurl。然後再次使用logincontinue,向本模組提交返回URL中提供的一切欄位,並重復第四步。
- 如果您收到了RESTART,這意味著身份驗證正常運作,但我們沒有連結的使用者賬戶。您可以將此看做UI或FAIL。
參數:
- loginrequests
只使用这些身份验证请求,通过返回自action=query&meta=authmanagerinfo的id与amirequestsfor=login,或来自此模块之前的响应。
- 將幾個值以 | 或 alternative 分隔。 上限值為 50 (機器人為 500)。
- loginmessageformat
返回消息使用的格式。
- 單值:html、wikitext、raw、none
- 預設值:wikitext
- loginmergerequestfields
合并用于所有身份验证请求的字段信息至一个数组中。
- 类型:布尔值(详细信息)
- loginpreservestate
从之前失败的登录尝试中保持状态,如果可能。
- 类型:布尔值(详细信息)
- loginreturnurl
为第三方身份验证流返回URL,必须为绝对值。需要此值或logincontinue两者之一。
在接收REDIRECT响应时,您将代表性的打开浏览器或web视图到特定用于第三方身份验证流的redirecttarget URL。当它完成时,第三方将发生浏览器或web视图至此URL。您应当提取任何来自URL的查询或POST参数,并作为logincontinue请求传递至此API模块。
- logincontinue
此请求是在早先的UI或REDIRECT响应之后的附加请求。必需此值或loginreturnurl。
- 类型:布尔值(详细信息)
- logintoken
自 action=query&meta=tokens 接收的 "login" 密鑰。
- 此參數為必填。
- *
- 此模块允许额外参数,取决于可用的身份验证请求。使用action=query&meta=authmanagerinfo与amirequestsfor=login(或之前来自此模块的相应,如果可以)以决定可用请求及其使用的字段。
範例:
- 开始作为用户Example和密码ExamplePassword登录至wiki的过程。
- api.php?action=clientlogin&username=Example&password=ExamplePassword&loginreturnurl=http://example.org/&logintoken=123ABC [在沙盒中打开]
- 在UI响应双因素验证后继续登录,补充OATHToken 987654。
- api.php?action=clientlogin&logincontinue=1&OATHToken=987654&logintoken=123ABC [在沙盒中打开]