javascript - 如何将不记名令牌分配给javaScript中的授权标头
问题描述
我正在尝试从需要不记名令牌的 instructure-canvas API 发出 GET 请求。我可以通过 Postman 和他们提供给我的 curl 命令来做到这一点:
curl -H "Authorization: Bearer <ACCESS-TOKEN>" "https://canvas.instructure.com/api/v1/courses"
这两种方法都有效,我返回了正确的 json 数据。但是,我想知道是否存在在 JavaScript 中执行相同操作的方法(有或没有其他库/框架)。抱歉,如果这是微不足道的,我对使用 API 非常陌生。
解决方案
如果您从浏览器发出请求,则可以使用Fetch API。它看起来有点像这样:
const url = ""; // API URL
const token = ""; // API Token
const method = "GET"; // Request method, change for what's needed
fetch(url, {
method,
headers: {
"Authorization": `Bearer ${token}` // This is the important part, the auth header
}
}).then(res => res.json().then(console.log)).catch(console.error); // Do better handling here
根据服务器设置,您可能需要额外的标头。还要留意控制台是否存在与 COR 相关的错误,因为它们会再次根据服务器的配置方式而有所不同。
推荐阅读
- python - Python快速排序-终端上运行的递归错误
- r - 我有以下 R 数据。我想以下列方式绘制条形图
- flutter - 107/5000 Flutter 中哪个小部件更适合执行用作背景的曲线:CustomShape 还是 CustomPaint?
- javascript - 按键/值合并对象数组
- go - 我如何在 go lang 中导出变量/属性
- ruby-on-rails - 工厂未为 RSPEC 测试 Ruby 定义
- java - Android 应用程序如何访问信使聊天?
- spring - 使用 Thymeleaf + Spring MVC 问题的表单输入类型 DateTime
- php - og:type、og:local 等是否有 Wordpress 功能?
- excel - Range.Sort 方法的 MatchCase 参数的作用是什么?