API:ClearHasMsg

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page API:ClearHasMsg and the translation is 56% complete.
Other languages:
Afrikaans • ‎Deutsch • ‎Deutsch (Sie-Form) • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎polski • ‎български • ‎русский • ‎العربية • ‎中文 • ‎日本語 • ‎한국어

GET request to clear hasmsg flag for the current user.

MediaWiki版本:
1.24

API文档


action=clearhasmsg

(main | clearhasmsg)
  • This module requires read rights.
  • This module requires write rights.
  • This module only accepts POST requests.
  • Source: MediaWiki
  • License: GPL-2.0-or-later

Clears the hasmsg flag for the current user.

Example:
Clear the hasmsg flag for the current user.
api.php?action=clearhasmsg [open in sandbox]

示例

POST请求

Clear the hasmsg flag for the current user.


回应

{
    "clearhasmsg": "success"
}

示例代码

Python

#!/usr/bin/python3

"""
    clear_has_msg.py

    MediaWiki API Demos
    Demo of `ClearHasMsg` module: Clear the hasmsg flag for the current user.

    MIT License
"""

import requests

S = requests.Session()

URL = "https://en.wikipedia.org/w/api.php"

PARAMS = {
    "action": "clearhasmsg",
    "format": "json"
}

R = S.post(url=URL, data=PARAMS)
DATA = R.json()

print(DATA)

PHP

<?php

/*
    clear_has_msg.php

    MediaWiki API Demos
    Demo of `ClearHasMsg` module: Clear the hasmsg flag for the current user.

    MIT License
*/

$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
    "action" => "clearhasmsg",
    "format" => "json"
];

$ch = curl_init();

curl_setopt( $ch, CURLOPT_URL, $endPoint );
curl_setopt( $ch, CURLOPT_POST, true );
curl_setopt( $ch, CURLOPT_POSTFIELDS, http_build_query( $params ) );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_COOKIEJAR, "cookie.txt" );
curl_setopt( $ch, CURLOPT_COOKIEFILE, "cookie.txt" );

$response = curl_exec($ch);
curl_close($ch);

echo ($response);

JavaScript

/*
	clear_has_msg.js

    MediaWiki API Demos
    Demo of `ClearHasMsg` module: Clear the hasmsg flag for the current user.

    MIT License
*/

var url = "https://en.wikipedia.org/w/api.php"; 

var params = {
    action: "clearhasmsg",
    format: "json"
};
request.post({ url: url, form: params }, function(error, res, body) {
    if (error) {
        return;
    }
    console.log(body);
});

MediaWiki JS

/*
	clear_has_msg.js

    MediaWiki API Demos
    Demo of `ClearHasMsg` module: Clear the hasmsg flag for the current user.

    MIT License
*/

var params = {
    action: "clearhasmsg",
    format: "json"
},
api = new mw.Api();

api.post( params ).done( function ( data ) {
console.log( data );
} );

可能的错误

代码 信息
mustbeposted clearhasmsg模块需要POST请求。

补充资料

  • The clearhasmsg action will remove the HasMsg flag, which causes the You have new messages banner to appear and returns true in HasMsg query. It can be used by applications that retrieve the talk page using the API, which unlike opening your talk page in a browser, doesn't automatically remove this flag.
  • When you trigger this action, the banner You have new messages will not appear until you receive any more messages from other users.
  • This module must be POSTed since 1.29.0-wmf.5.[1]

References