javascript - 使用 javascript 将参数添加到 url

标签 javascript

你好,我想向网址添加一些参数

let params = {doors: 4, color: red}
let request = new Request('/api/cars')
Object.keys(params).forEach(key => request.searchParams.append(key, params[key]))

但我收到 Cannot read property 'append' of undefined 错误

如果我这样做,它就会起作用

var url = new URL('https://example.com/api/cars');
Object.keys(params).forEach(key => url.searchParams.append(key, params[key]))
let request = new Request(url)

但是由于我不使用 URL 仅相对 URL,我想知道是否无法将参数附加到 Request

最佳答案

您可以使用 URLSearchParams对象并将其附加到 URL 字符串。这是一个例子:

const params = {
  doors: 4,
  color: 'red'
};
const searchParams = new URLSearchParams();
Object.entries(params).forEach(([key, value]) => searchParams.append(key, value));

const request = new Request(`/api/cars?${searchParams.toString()}`);
console.log(request.url);

关于javascript - 使用 javascript 将参数添加到 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60178380/

相关文章:

javascript - Sencha Touch Checkbox 选择标签点击

javascript - 如何在正则表达式中从右侧跟踪字符串?

javascript - 看不到 router-outlet 是 Angular 组件 - router-outlet 不是已知元素

javascript - 取消按字母顺序排列的连续字符的资格。 Sol [ASCII格式]

javascript - 使用 Uniform/jquery 更改 SELECT 的高度

javascript - 可以将 Google Maps Javascripts 放入 Assets 管道 (Rails) 中吗?

javascript - ExtJS 3.0 中更通用的面板加载掩码

javascript - 下拉列表中的 Angular ng-repeat

返回错误维度的 Javascript 多维数组

javascript - 使用 ApplyForce 通过箭头键移动对象不起作用