Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript MediaWiki API:编辑节而不销毁标题_Javascript_Mediawiki Api - Fatal编程技术网

Javascript MediaWiki API:编辑节而不销毁标题

Javascript MediaWiki API:编辑节而不销毁标题,javascript,mediawiki-api,Javascript,Mediawiki Api,我试图编辑维基百科页面上的一个部分,但当我这样做时,整个部分都会被我通过URL发送的任何文本所取代,甚至是标题,所以它不再是一个部分。有没有办法在不删除标题的情况下编辑部分 到目前为止,我正在使用的函数(承认是从文档页面偷来的)如下所示: function editSection(section, summary, content, editToken) { $.ajax({ url: mw.util.wikiScript('api'), data: {

我试图编辑维基百科页面上的一个部分,但当我这样做时,整个部分都会被我通过URL发送的任何文本所取代,甚至是标题,所以它不再是一个部分。有没有办法在不删除标题的情况下编辑部分

到目前为止,我正在使用的函数(承认是从文档页面偷来的)如下所示:

function editSection(section, summary, content, editToken) {
    $.ajax({
        url: mw.util.wikiScript('api'),
        data: {
            format: 'json',
            action: 'edit',
            title: mw.config.get('wgPageName'),
            section: section,
            summary: summary,
            text: content,
            token: editToken
        },
        dataType: 'json',
        type: 'POST',
        success: function(data) {
            if (data && data.edit && data.edit.result == 'Success') {
        window.location.reload();
            } else if (data && data.error) {
                alert('Error: API returned error code "' + data.error.code + '": ' + data.error.info);
            } else {
                alert('Error: Unknown result from API.');
            }
        },
        error: function(xhr) {
            alert('Error: Request failed.');
        }
    });
}
要获取我的编辑令牌,我使用

function getEditToken() {
    $.getJSON(
        'http://en.wikipedia.org/w/api.php?', {
            action: 'tokens',
            type: 'edit',
            format: 'json'
        },
        function(data) {
            if (data.tokens) {
                wgEditToken = data.tokens.edittoken;
            }
        }
    )
}

救命啊

是的,标题是本节的一部分。因此,如果您不想替换(甚至删除)它,则需要将其作为文本的一部分发送。但是,如果您不想完全覆盖某个节,您已经查询了该节的文本[内容],不是吗

顺便说一句:您可以使用
mw.user.tokens
map来获取令牌,而不是手动检索它