【发布时间】:2017-01-07 19:56:17
【问题描述】:
我在一个项目中使用 Fetch (Fetch API),为了保持一致性,我想创建一个函数来接收所有参数,如方法、url 和数据,并创建正确的请求,具体取决于它是否GET 或 POST 请求。
是否可以使用 Fetch 发送一个数据对象,用于 GET 请求,将数据转换为带有参数的字符串,如果是 POST 请求,它只是在正文中发送数据对象?
看起来像这样:
fetch ('/test', {
method: 'GET',
data: {
test: 'test'
}
});
这个疑问是受到这个 jQuery ajax 行为的启发:
$.ajax({
url: '/test',
method: 'GET',
data: {
test: 'test'
}
});
这会产生这个请求:
'/test/?test=test'
【问题讨论】:
-
嗯,是的,这是可能的。但是你的问题到底是什么? (注意:你知道 IE 和 safari 不支持这个吗?)
-
是的,我知道,这只是为了实验 :) 我的问题是:如果我在 GET 请求的 fetch 构造函数中正常传递数据对象,它会发送请求吗就像我给出的例子一样 '/test/?test=test' ?
-
我试过了,但我对通过数据对象中的多个属性进行迭代更感兴趣。此外,我在这里搜索了这个问题,但一无所获,所以我决定创建一个可能对其他开发人员有用的主题。谢谢! :)
标签: javascript ajax fetch-api