通过将URL图像转换为二进制

时间:2017-02-22 03:22:04

标签: javascript image cors blob

我从API中提取了一些数据,其中一个属性是图像网址。所以我把那个网址粘在了。但是,我需要从URL中获取该图像,将其转换为二进制文件,以便将其发送到要存储的数据库,以二进制形式而不仅仅是URL。

我尝试了两种方法,一种是使用FileReader转换为blob,另一种是我写入a并转换为blob。但是,使用这两种方法,来自URL的Image的主机给我CORS拒绝,因为请求不是来自同一个域,我理解。我无法控制在其他服务器上设置标头,但我确实需要将url图像转换为二进制。如果没有在我自己的服务器上进行转换,有没有这样做呢?

1 个答案:

答案 0 :(得分:3)

您可以使用https://cors-anywhere.herokuapp.com/

等开放式反向代理

而不是将您的请求发送到https://example.com/blob-source,而是将其发送到https://cors-anywhere.herokuapp.com/https://example.com/blob-source,然后响应将通过Access-Control-Allow-Origin响应标头和任何其他必要的CORS发送回浏览器响应标头已添加。

或者您可以从https://github.com/Rob--W/cors-anywhere/获取来源并运行您自己的代理。