Подтвердить что ты не робот

Строка запроса Url в fetch api в javascript

Как передать строку запроса с fetch api javascript (https://github.com/github/fetch)?

var url = "http://www.abcd.com";
var query = {
    a: "test",
    b: 2
};

Выше должно быть преобразовано в http://www.abcd.com?a=test&b=2, когда я передаю некоторый аргумент fetch

4b9b3361

Ответ 1

var params = Object.keys(query)
                   .map((key) => encodeURIComponent(key) + "=" + encodeURIComponent(query[key]))
                   .join("&")
                   .replace(/%20/g, "+");

fetch(url + "?" + params);

Или с объектом options - , но это будет НЕ работать с GET и HEAD методом:

fetch(url, {
    method: "POST",
    body: convertObjectToFormData(query)
}).then(...);

function convertObjectToFormData(obj) {
    var formData = new FormData();
    for (var key in obj) {
        formData.append(key, obj[key]);
    }
    return formData;
}