fetch 文件 跨域
时间: 2023-10-25 22:28:53 浏览: 235
跨域下载文件
在使用 Fetch API 读取远程文件时,如果远程文件的地址与当前网页的域名不一致,就会发生跨域问题。这是因为浏览器有同源策略,限制了不同域名之间的访问。
要解决跨域问题,可以在服务端设置 CORS(跨域资源共享)规则,允许指定的域名访问资源。如果你没有权限修改服务端的设置,也可以使用 JSONP 或代理等方式来实现跨域访问。
以下是使用代理方式读取远程文件的示例代码:
```javascript
fetch('/proxy?url=http://example.com/file.txt')
.then(response => response.text())
.then(data => console.log(data))
.catch(error => console.error(error));
```
这段代码会发送一个 GET 请求到本地代理服务器,然后由代理服务器向远程服务器请求文件,并将响应的文本内容返回给浏览器。需要注意的是,代理服务器需要在服务端实现。
阅读全文