TOGOUTECH

fetch-api

全部标签

javascript - 如何使用 fetch() 从请求中获取响应的内容长度

我在返回response.json()时遇到错误,当时我用一个空的响应体做一个请求,所以我试图在有空的时候返回一个空对象body。我打算采用的方法是检查响应的Content-Lengthheader,但是,response.headers.get('Content-Length')以某种方式返回空。这是我的代码:functionfetchJSON(url,options,state=null){returnfetch(url,Object.assign({},options,{//TODO:AddoptionsherethatshouldbethereforeveryAPIcall//

javascript - 在 Javascript 中使用 Fetch API 上传文件并显示进度

这个问题在这里已经有了答案:Uploadprogressindicatorsforfetch?(12个答案)关闭5年前。我正在使用FetchAPI在Javascript中将大文件上传到服务器。FetchAPI中是否有任何事件可用于跟踪上传进度?

javascript - 真的没有办法从失败的 js 获取请求中获取响应主体吗?

新的jsfetchAPI如果请求失败(400),则promise失败:fetch(uri).catch(function(err){console.log(err);});出现这种情况真的就没有办法获取响应体了吗?例如检查错误代码。编辑:我创建了一个jsfiddle:https://jsfiddle.net/4x4xLwqo/调用此mockbin端点:http://mockbin.org/bin/d87acbb0-526e-4d66-aea4-b827d9c35031/view编辑2:更新jsfiddle以使用更好的端点:https://jsfiddle.net/4x4xLwqo/2/

javascript - 如何使用模式为 'no-cors' 的 fetch API 获取数据?

我的代码如下所示。如何读取响应数据?varurl='http://www.bbc.co.uk/sport/football';fetch(url,{mode:'no-cors'}).then(function(response){console.log(response);});ResponseObject 最佳答案 你不能。如果源端不支持CORS,实际上是无法直接获取响应数据的。这就是no-cors的全部意义...允许您以特定方式使用响应,但实际上并不读取/访问数据。

javascript - 如何使javascript获取同步?

我正在使用fetch从api获取数据json。工作正常,但我必须在各种调用中重复使用它,因此它需要同步,否则我需要某种方法在每个组件的提取完成时更新界面。functionfetchOHLC(yUrl){fetch(yUrl).then(response=>response.json()).then(function(response){alert(JSON.stringify(response.query));vart=response.created;varo=response.open;varh=response.high;varl=response.low;varc=res

javascript - 如何使用 fetch() 和 WhatWG 流获取文件上传进度

注意:我不是在寻找任何替代品。我知道这可以通过XMLHttpRequest来完成。我也不关心浏览器支持。我只想了解新的/即将推出的标准。我有一个File对象,我可以像这样使用PUT上传它:fetch(url,{method:"PUT",body:fileObject,});如何从中获取上传进度?据我了解,获取选项的body可以是ReadableStream.那么也许有一种方法可以将File对象包装到ReadableStream并从中获取进度状态?例如。像这样fetch(url,{method:"PUT",body:asReadableStream(fil

javascript - 替换测试中的特定模块

我正在使用Jest测试我的React-Redux应用程序,作为我的API调用的一部分,我正在导入一个获取模块cross-fetch。我想用fetch-mock覆盖或替换它。这是我的文件结构:Action.jsimportfetchfrom'cross-fetch';exportconstapiCall=()=>{returnfetch('http://url');Action.test.jsimportfetchMockfrom'fetch-mock';import{apiCall}from'./Action';fe

javascript - 使用 Async/Await 获取 API 'POST' 的正确方法

我正在从事一个需要我向API发出请求的项目。使用Async/Await发出POST请求的正确形式是什么?例如,这是我获取所有设备列表的请求。我将如何将此请求更改为POST以创建新设备?我知道我必须添加带有数据主体的header。getDevices=async()=>{constlocation=window.location.hostname;constresponse=awaitfetch(`http://${location}:9000/api/sensors/`);constdata=awaitresponse.json();if(response.status!==20

javascript - 使用 fetch api 的 laravel 中的 Http Post 给出 TokenMismatchException

我正在尝试使用fetchapi制作一个http帖子。即使我正在发送token,我也会收到错误TokenMismatchExceptioninVerifyCsrfToken.php。如何使用fetchapi进行调用?(我也尝试过使用jQueryajax并且它完美地工作)这是获取api代码varURL=$("#form").attr("action");vartoken=$("input[name='_token']").val();vargroup_id=$(this).val();fetch(URL,{method:

javascript - 从 fetch -> promise -> response 获取数据

我正在尝试向服务器发送一些数据,但我不知道如何取回响应数据。我有以下代码:fetch(url,{method:'POST',headers:{'Accept':'application/json','Content-Type':'application/json'},body:JSON.stringify({email:login,password:password,})}).then(function(a){console.log(a);})它打印一个Response它包含诸如body(ReadableB