javascript - (GET) API 请求在 Javascript 中失败
问题描述
我正在尝试使用本机 javascript 从 antares(物联网平台)获取 API 数据,这是代码
var url = 'https://platform.antares.id:8443/~/antares-cse/antares-id/SuhuPagarsih/Temperature/la';
var opt = {
method: 'GET',
mode: 'no-cors',
headers: {
'X-M2M-Origin': 'bdc2996719c6ac07:8cbb60e9c5997e74',
'Content-Type': 'application/json;ty=4',
'Accept':'application/json',
},
}
fetch(url, opt)
.then(function(data) {
console.log(data)
})
.catch(function(err) {
console.error(err)
})
这是结果
如您所见,它失败了。大多数时候我看到错误原因是被禁止的。但是当我尝试使用 node js 和 postman 的代码片段时。我得到了一个很好的结果(200 OK)如果你需要比较这是代码(我想都是一样的)
var http = require("https");
var options = {
"method": "GET",
"hostname": "platform.antares.id",
"port": "8443",
"path": "/~/antares-cse/antares-id/SuhuPagarsih/Temperature/la",
"headers": {
"x-m2m-origin": "bdc2996719c6ac07:8cbb60e9c5997e74",
"content-type": "application/json;ty=3",
"cache-control": "no-cache",
"postman-token": "ff6cbe83-97ac-6ed5-aaec-e2bafaf44002"
}
};
var req = http.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
这是结果
我的问题是,似乎有什么问题?从本机 javascript 和节点 js 发出 API 请求有什么区别?我该如何解决这个问题?或者也许有这个问题?我的目标只是显示从 API 到 HTML/网页的数据
谢谢!
解决方案
推荐阅读
- google-tag-manager - JavaScript 编译器错误 - Facebook Pixel GTM
- ajax - 淘汰赛 - 在点击绑定成功 ajax 发布后重定向到另一个页面
- vue.js - Vue多模态和组件
- c# - Selenium 没有警报处于活动状态
- python - 从 ImageField Django 2.0 获取 EXIF 数据
- c++ - 媒体文件格式 Qt
- java - 自动装配名称以特定后缀结尾的组件
- mediawiki - 拆分字符串和映射值,然后再次加入
- ios - 访问任何类型数组的下标引用字典
- jsf - 更新(仅选择父面板)多个包含的输入组件 JSF 包含在对话框中,primefaces