var myHeaders = new Headers(); myHeaders.append("Content-Type", "application/json"); myHeaders.append("Authorization", "Basic eWFuZ3lhbmc6UGFzczEyMzQ1Ng=="); var raw = JSON.stringify([ { "matnr": "TEST-0002" } ]); var requestOptions = { method: 'GET', headers: myHeaders, body: raw, redirect: 'follow' }; fetch("http://s4host:8002/sap/material_query", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));修改这段代码使它能在浏览器F12控制台运行
时间: 2024-04-13 14:25:58 浏览: 262
要使这段代码能够在浏览器的开发者工具中的控制台运行,你需要做以下修改:
1. GET请求不应该有请求体(body),而是使用查询字符串(query string)传递参数。因此,将 requestOptions 中的 `body: raw` 删除。
2. 由于跨域限制,浏览器默认情况下不允许从一个域发送带有自定义头部的请求。如果你确实需要发送自定义头部的请求,你需要确保服务器端进行了相应的配置,允许跨域请求。否则,你可以将代码运行在与目标URL同域的页面上。
下面是修改后的代码:
```javascript
var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", "Basic eWFuZ3lhbmc6UGFzczEyMzQ1Ng==");
var requestOptions = {
method: 'GET',
headers: myHeaders,
redirect: 'follow'
};
fetch("http://s4host:8002/sap/material_query", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
```
请确保将 `http://s4host:8002/sap/material_query` 替换为实际的目标URL。如果仍然遇到跨域问题,请按照前面提到的解决方法进行处理。
这样修改后的代码应该可以在浏览器的开发者工具中的控制台中运行。如果还有其他问题,请随时提问。
阅读全文