gpt4 book ai didi

reactjs - 使用react禁止 header 访问vuforia vws

转载 作者:行者123 更新时间:2023-12-03 13:31:50 25 4
gpt4 key购买 nike

我正在尝试使用react + axios调用vuforia的web服务,阅读docs of vuforia并按照这些步骤进行调用时,我在 chrome 的控制台日志中收到错误:

xhr.js:121 Refused to set unsafe header "Date"

但是如果我理解正确的话,我必须在请求中声明 header “日期”。我该如何解决这个问题,这是我的代码:

class App extends Component {
componentDidMount() {
var md5 = require('md5');
var base64 = require('base-64');
var hmacsha1 = require('hmacsha1');
var contentType = "application/json";
var hexDigest = "d41d8cd98f00b204e9800998ecf8427e";
var accessKey = "xxxxxxxxxxxx";
var secretKey = "xxxxxxxxxxx";
var date = new Date().toUTCString();
var url = `${'https://cors-anywhere.herokuapp.com/'}https://vws.vuforia.com/targets`;
var dateValue = date;
var requestPath = url;
var newLine = '\n';
var toDigest = `GET${newLine}${hexDigest}${newLine}${contentType}${newLine}${dateValue}${newLine}${requestPath}`;
var shaHashed = hmacsha1(secretKey, toDigest);

var signature = base64.encode(shaHashed);
const config = {
headers: {
'Date': `${date}`,
'Authorization': `VWS ${accessKey}:${signature}`
}
}
console.log(toDigest);
axios.get(url, config,{ crossdomain: true })
.then(json => console.log(json))
}

console.log(toDigest):

GET
d41d8cd98f00b204e9800998ecf8427e
application/json
Mon, 29 Oct 2018 12:45:26 GMT
https://cors-anywhere.herokuapp.com/https://vws.vuforia.com/targets

最佳答案

更改您的配置代码

const config = {
headers: {
'Date': `${date}`,
'Authorization': `VWS ${accessKey}:${signature}`
}

const config = {
headers: {
'Authorization': `VWS ${accessKey}:${signature}`
}

XMLHttpRequest 不允许设置 Date header ,它是由浏览器自动设置的。原因是,通过操纵这些 header ,您可能能够欺骗服务器通过同一连接接受第二个请求,该连接不会经过通常的安全检查 - 这将是浏览器中的安全漏洞。这是the list of HTTP headers您无法自行设置。

如果您仍然遇到错误,请告诉我。

关于reactjs - 使用react禁止 header 访问vuforia vws,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53046966/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com