【问题标题】:MediaWiki API, polish charactersMediaWiki API,波兰字符
【发布时间】:2020-01-07 18:29:35
【问题描述】:

我编写了一些应用程序,它查询 MediaWiki API 的搜索字符串并返回结果。但是,这段代码在尝试将波兰字符放入 URL 字符串时不起作用。

我的GET请求函数

function GET(url) {
    var xhr = new XMLHttpRequest(); // a new request
    xhr.open("GET", url, false);
    xhr.setRequestHeader('Content-type', 'application/json; charset=UTF-8')
    try {
        xhr.send(null);
    } catch (e) {
        throw e;
    }
    return xhr.responseText;
}

如果这很重要,我稍后会解析响应const resultJSON = JSON.parse(GET(searchUrl));,这是我的代码停止工作的行。虽然应用程序没有崩溃,但没有响应。没有错误。此外,如果响应包含波兰字符,则它可以正常工作。 整个上下文的链接:https://hastebin.com/eqaxoxorot.js

【问题讨论】:

    标签: javascript api xmlhttprequest


    【解决方案1】:

    在发送请求之前尽量对url进行编码,避免里面有特殊字符:

    const uri = encodeURI('http://zażółćgęsląjaźń.com');
    // result: http://za%C5%BC%C3%B3%C5%82%C4%87g%C4%99sl%C4%85ja%C5%BA%C5%84.com
    

    【讨论】:

      猜你喜欢
      • 2013-10-10
      • 1970-01-01
      • 2011-05-13
      • 1970-01-01
      • 1970-01-01
      • 2013-04-20
      • 1970-01-01
      • 2016-04-29
      • 1970-01-01
      相关资源
      最近更新 更多