API:Tokens
Outdated translations are marked like this.
Halaman ini adalah bagian dari dokumentasi API Tindakan MediaWiki. |
Versi MediaWiki: | ≥ 1.24 |
API:Modul Token menyediakan token yang diperlukan oleh tindakan modifikasi data seperti logging, mengedit atau memindahkan halaman, dan mengawasi atau mengawasi perubahan. Untuk setiap tindakan, Anda memerlukan jenis token tertentu. Misalnya:jika Anda ingin masuk ke situs Wiki melalui API Tindakan, Anda memerlukan token jenis login untuk melanjutkan.
Untuk bantuan memindahkan kode yang lebih lama, bacalah Pengusangan parameter token API warisan
Dokumentasi API
Contoh
DAPATKAN permintaan
Respon
{
"batchcomplete": "",
"query": {
"tokens": {
"logintoken": "9ed1499d99c0c34c73faa07157b3b6075b427365+\\"
}
}
}
Kode sampel
Python
#!/usr/bin/python3
"""
tokens.py
MediaWiki API Demos
Demo of `Token` module: Fetch token of type `login`
MIT License
"""
import requests
S = requests.Session()
URL = "https://www.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)
PHP
<?php
/*
tokens.php
MediaWiki API Demos
Demo of `Token` module: Fetch token of type `login`
MIT License
*/
$endPoint = "https://www.mediawiki.org/w/api.php";
$params = [
"action" => "query",
"meta" => "tokens",
"type" => "login",
"format" => "json"
];
$url = $endPoint . "?" . http_build_query( $params );
$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$output = curl_exec( $ch );
curl_close( $ch );
$result = json_decode( $output, true );
echo( $result['query']['tokens']['logintoken'] . "\n" );
Perl
#!/usr/bin/perl
# token.pl
# MediaWiki API Demos
# Demo of `Token` module: Fetch token of type `login`
# WTFPL
use strict;
use warnings;
use JSON;
use LWP::UserAgent;
use URI;
my $url = URI->new('https://www.mediawiki.org/w/api.php');
my %params = (
'action' => 'query',
'meta' => 'tokens',
'type' => 'login',
'format' => 'json',
);
$url->query_form(%params);
my $ua = LWP::UserAgent->new();
my $response = $ua->get($url);
my $data = JSON::decode_json($response->content);
my $login_token = $data->{'query'}{'tokens'}{'logintoken'};
print "$login_token\n";
JavaScript
/*
tokens.js
MediaWiki API Demos
Demo of `Token` module: Fetch token of type `login`
MIT License
*/
var request = require('request'),
url = "https://www.mediawiki.org/w/api.php";
var params = {
action: "query",
meta: "tokens",
type: "login",
format: "json"
};
request.get( { url: url, qs: params }, function( error, response, body ){
body = JSON.parse( body );
console.log( body.query.tokens.logintoken );
});
MediaWiki JS
/*
tokens.js
MediaWiki API Demos
Demo of `Token` module: Fetch token of type `csrf`
MIT License
*/
var params = {
action: 'query',
meta: 'tokens',
type: 'csrf',
format: 'json'
},
api = new mw.Api();
api.get( params ).done( function ( data ) {
console.log( data.query.tokens.csrftoken );
} );
Kemungkinan kesalahan
Kode | Info |
---|
Sejarah parameter
- v1.27: Memperkenalkan
login
,createaccount
Lihat juga
- API:Ekstensi#Edit token
- Metode yang tidak digunakan lagi untuk mendapatkan token: API:Tokens (action)