【发布时间】:2018-01-25 01:06:34
【问题描述】:
我正在使用fetch 从我的休息服务器获取数据,并且我在客户端使用这个带有 Javascript 的查询:
return fetch(
"http://localhost:443/myressource", {
method: 'GET',
mode: 'no-cors',
credentials : 'include',
headers: {
"Authorization":"Basic " + btoa("test:test"),
"Accept-Encoding": "gzip, deflate"
}})
.then(response => response.text())
.catch(err => { throw err })
问题在于第一个请求已经包含凭据,通常当您发送请求时,第一个请求没有凭据,您必须在服务器端设置一个领域,然后浏览器应该发送凭据。
有没有办法让 fetch 工作正常?意思是在需要时发送凭据?
【问题讨论】:
-
.catch(err => { throw err })什么都不做。 -
或者更确切地说,做一些事情,但它纯粹是开销而不改变最终结果。
-
@SLaks 我在另一个函数中有 .catch(err => console.error(err))。
-
@John:这很好,但
.catch(err => { throw err;})除了引入不必要的开销之外,真的没有其他目的。
标签: javascript fetch-api