如何在 no-cors 的 fetch 请求中更改 Header?

向服务器发送请求并需要发送标头 'Content-Type': 'application/json'


所有这一切都是通过 fetch 完成的,但由于跨域必须指定


模式:'no-cors',


在这种模式下,浏览器默认为 - 'Content-Type': 'text/plain'


实际上,这就是问题所在,因为返回了 415 错误 这里是整个请求代码


realFetch(url {

        method: 'POST',

        mode: 'no-cors',

        cache: 'no-cache',

        credentials: "same-origin",

        headers: {

            'Content-Type': 'application/json'

        },

        body: JSON.stringify(dataUser)

      }).

提示如何解决这个问题?如何强制浏览器使用 fetch 更改标题?


临摹微笑
浏览 505回答 1
1回答

幕布斯7119047

你不能。设置no-cors告诉fetch您不需要 CORS 权限,因此不会做任何需要权限的事情。将Content-Type标头设置为HTMLenctype属性所允许的三个值之一之外的值需要使用 CORS 的服务器的许可。由于您已告诉fetch不要检查许可,因此它会忽略您执行通常禁止的操作的指示。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript