问题标签 [fetch-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何使用 Promise.all 获取 URL 数组?
如果我有一个 url 数组:
我想构建一个看起来像这样的对象:
我一直在努力学习用 来做到这一点fetch
,这当然会返回Promise
s。
我尝试过的一些方法不起作用:
这看起来不对,而且在任何情况下它都不起作用——我没有得到一个数组 ['one', 'two', 'three']。
在这里使用Promise.all
正确的方法吗?
javascript - Javascript在没有会话cookie的情况下发出ajax请求
我在火狐。javascript中有没有办法只使用自定义标头发出http请求?即没有cookie字段或用户代理或任何东西,只有我的js代码指定的。
它应该是基础 js 而不是 jquery 之类的库。
例如,尝试发送没有 'Cookie' 标头的 Http GET,我已经尝试过:
但我查看开发人员控制台,请求仍然与会话 cookie 一起发送。我也试过:
javascript - 访问 CORS 请求的响应标头
我正在使用 fetch API 发出类似于以下代码段的跨域请求
如您所见,尽管在响应中返回了 Link 标头(以及其他一些标头),但它不可访问。我认为这是一个 CORS 问题,因为在本地请求中,所有标头都可以访问。
这是设计使然吗?有没有办法解决这个问题?
post - 使用 Zapier + Prosperworks 获取 API 调用
我正在尝试通过 Zapier 的代码调用 Prosperworks API。我可以通过 curl 轻松地做到这一点,但对于我的一生来说,无法使用 fetch 让这个 POST 调用正常工作。以下是我所得到的......任何帮助表示赞赏。谢谢
javascript - YouTube 资源上 window.fetch 的 CORS 错误
我正在使用 window.fetch 检索具有以下 URL 的 YouTube 资源:
http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=[id]&format=json
使用 Fiddler,我看到我从包含 JSON 数据的 YouTube 服务器获得了预期的回复。但是,由于遇到 Javascript 错误,我无法使用它。
请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问源“ http://localhost:60366 ”。
我尝试在我的 window.fetch 上启用 CORS,但我读到这只有在服务器在其标头响应中允许 CORS 时才有效。YouTube 在其回复中没有此标头字段。
如何使我的脚本能够使用 window.fetch 接受来自 YouTube 的响应?(我使用的是 Chrome v44。)
javascript - Fetch API - 跨域
Fetch API,AJAX 的“继任者”似乎很有希望,但我似乎找不到任何跨域(或跨域,如果你愿意的话)的例子,事实上,除了同源示例外,网上并没有太多关于这个的例子,那么这是否意味着 JSONP 在未来几年仍然是事实上的、直接的方式?就配置烦恼而言,CORS 似乎不切实际。
javascript - 如何在 react-native 中使用 FormData?
嗨,只需学习使用 js 和 react-native。我不能使用 FormData 它总是显示不支持的 bodyinit 类型。我想发送文本而不是 JSON.stringify。谁能帮我?谢谢!
javascript - 如何使用 window.fetch 下载文件?
如果我想下载文件,我应该在then
下面的块中做什么?
请注意,代码在客户端。
javascript - 如何在对象数组上异步查询 API,然后正确地改变每个对象?(正确使用承诺)
我有一系列带有 ID 的电影,但没有评分。我想查询电影数据库以获取每部电影的收视率,因此我使用查询 API 遍历每个对象fetch(url)
,然后使用.then(function(response) { add_rating_to_specific_movie})
.
问题是,.then
这是一个异步响应,我无法知道哪部电影返回了评级值,以便我可以用评级改变正确的电影对象。而且我无法使用返回的值创建一个新数组,因为有些电影会返回status: movies not found
,而且我无法知道哪些电影未分级。
可以在这里使用一些关于使用 Promise 的好算法的指导。谢谢!
javascript - 为什么 JavaScript fetch API 的响应对象是一个承诺?
当使用 JavaScript fetch API 从服务器请求时,您必须执行类似的操作
在这里,response.json()
正在解决它的诺言。
问题是,如果你想捕捉404
的错误,你必须解决响应承诺,然后拒绝获取承诺,因为只有在catch
出现网络错误时才会结束。所以 fetch 调用变成了类似
这是更难阅读和推理的东西。所以我的问题是:为什么需要这个?将承诺作为响应值有什么意义?有没有更好的方法来处理这个问题?