尽管内容长度正确,但获取返回空 blob

Cam*_*lMG 5 blob fetch react-native expo

我试图通过 fetch API 在 React Native 中检索原始图像,但是,即使内容标头显示请求按预期工作,结果也是空的。

虽然我知道 Expo 提供了 FileSystem.downloadAsync 方法来保存图像,但我的端点(与示例不同)需要 POST 请求,这意味着 downloadAsync 不适合。

当发出 POST 请求时,我得到了相同的行为。

  • 我已将 URL 直接添加到图像元素中,并且加载正常。

  • 我尝试使用 text() 和 json() 只是为了查看结果是否发生变化,并且在这两种情况下响应都是空的。

  • 我尝试过使用 API 测试器,例如:https: //apitester.com/,结果显示如我所料

以下内容可以在我的零食里找到

这是我的要求:

fetch('https://i.imgur.com/c9waLgY.jpg')
      .then(result => {
        console.log(result)
        return result.blob()
      })
      .then(result => {
        console.log('blob', result);
      })
      .catch(error => console.log(error));
Run Code Online (Sandbox Code Playgroud)

它返回以下标头:

content-type:"image/jpeg"
access-control-allow-methods:"GET, OPTIONS"
access-control-allow-origin:"*"
cache-control:"public, max-age=31536000"
x-cache-hits:"1, 1"
date:"Wed, 23 Jan 2019 21:10:36 GMT"
accept-ranges:"bytes"
etag:""bcb343578e3ea0d0d824f62e66d22bf0""
server:"cat factory 1.0"
age:"15302"
last-modified:"Wed, 23 Jan 2019 16:00:45 GMT"
x-timer:"S1548277836.140914,VS0,VE2"
content-length:"192289"
x-served-by:"cache-iad2133-IAD, cache-sea1051-SEA"
x-cache:"HIT, HIT"
Run Code Online (Sandbox Code Playgroud)

以及以下斑点:

blobId:"a910e21b-80ba-44da-b6fa-20194b152538"
offset:0
size:0
type:""
lastModified:1548278321298
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?