Azure AD 预检请求未返回数据

2023-11-29

我目前正在尝试发送帖子请求至https://login.microsoftonline.com/XXX/oauth2/token用于检索应用程序的访问令牌和刷新令牌的端点。使用 axios 向端点发送 post 请求时,会发送预检,但不会返回任何响应。

错误:

Response to preflight request doesn't pass access control check: 
No 'Access-Control-Allow-Origin' header is present on the requested resource. 
Origin 'http://localhost:3000' is therefore not allowed access.

然而,对 axios post 请求使用不同的方法,它返回数据但没有预检,并给出不同的错误:

No 'Access-Control-Allow-Origin' header is present on the requested resource. 
Origin 'http://localhost:3000' is therefore not allowed access.

两个 axios 请求:

const data = new FormData();

 data.append('grant_type', this.config.grant_type); 
 data.append('client_id', this.config.client_id);
 data.append('code', localStorage.getItem('auth_code'));
 data.append('redirect_uri', this.config.redirect_uri);
 data.append('client_secret', this.config.client_secret);
 data.append('resource', this.config.client_id);

axios.post(`https://login.microsoftonline.com/${this.config.tenant}/oauth2/token`, data);

方法二:

  axios({
  method: 'post',
  contentType: 'application/json',
  url: `https://login.microsoftonline.com/${this.config.tenant}/oauth2/token`,
  data: {
    grant_type: this.config.grant_type,
    client_id: this.config.client_id,
    code: localStorage.getItem('auth_code'),
    redirect_uri: this.config.redirect_uri,
    client_secret: this.config.client_secret,
    resource: this.config.client_id
  }
});

这是 axios 请求本身的问题还是端点的问题?


您应该使用隐式授予流程来获取访问令牌。您不能使用包含来自前端 JavaScript 的客户端密钥的流程!

您的客户端密码(也称为您的应用程序的密码)目前对访问您网站的任何人都是公开的!

You cannot在前端 JavaScript 中使用客户端密钥。

您需要在应用程序的清单中启用隐式流,然后在应用程序中使用如下 URL 重定向到 Azure AD:

https://login.microsoftonline.com/tenant-id-here/oauth2/authorize?client_id=your-client-id&response_type=id_token+token&resource=resource-id-for-api&redirect_uri=your-app-redirect-url

文档:https://learn.microsoft.com/en-us/azure/active-directory/develop/active-directory-authentication-scenarios#single-page-application-spa

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Azure AD 预检请求未返回数据 的相关文章

  • 以编程方式填写reactjs表单

    我正在编写一个用户脚本 但无法填写由reactjs制作的表单 我的代码 document querySelector id username value email protected cdn cgi l email protection
  • 可以在初始 DOM 解析期间/之前修改 DOM 吗?

    是否可以在初始 DOM 解析期间或之前修改 DOM 或者我是否必须等到 DOM 被解析和构建之后才能与其交互 更具体地说 是否有可能阻止 DOM 中的脚本元素使用用户脚本 内容脚本或 Chrome 或 Firefox 中的类似脚本运行 在解
  • 在打字稿中导入 json

    我是 typescript 的新手 在我的项目中 我们使用 typescript2 在我的要求之一中 我需要导入 json 文件 所以我创建了 d ts 文件如下 test d ts declare module json const va
  • 有没有办法使用 Rspec/Capybara/Selenium 将 javascript console.errors 打印到终端?

    当我运行 rspec 时 是否可以让 capybara selenium 向 rspec 报告任何 javascript console errors 和其他异常 我有一大堆测试失败 但当我手动测试它时 我的应用程序正在运行 如果不知道仅在
  • 如何纠正流警告:解构(缺少注释)

    我正在编写一个小型 React Native 应用程序 并且正在尝试使用 Flow 但我无法在任何地方真正获得有关它的正确教程 我不断收到错误 destructuring Missing annotation 有关 station 这段代码
  • 将 GMT 时间转换为当地时间

    我以这种格式从我的服务器获取 GMT 时间 Fri 18 Oct 2013 11 38 23 GMT 我的要求是使用Javascript将此时间转换为本地时间 例如 如果用户来自印度 首先我需要采用时区 5 30并将其添加到我的服务器时间并
  • 调整图像大小并将画布旋转 90 度

    这里有很多关于在 js 上使用画布旋转图像的主题 我阅读了其中的大部分内容 但无法找到解决我的问题的方法 我正在接收任何分辨率的图像 来自上传组件 我将其大小调整为 1024x768 如下所示 var canvas document cre
  • HTTPWebResponse 响应字符串被截断

    应用程序正在与 REST 服务通信 Fiddler 显示作为 Apps 响应传入的完整良好 XML 响应 该应用程序位于法属波利尼西亚 在新西兰也有一个相同的副本 因此主要嫌疑人似乎在编码 但我们已经检查过 但空手而归 查看流读取器的输出字
  • DataTables row.add 到特定索引

    我正在替换这样的行项目 var targetRow entity row dataTable targetRow closest table dataTable DataTable dataTable row targetRow remov
  • 将 UMD Javascript 模块导入浏览器

    你好 我正在对 RxJS 进行一些研究 我可以通过在浏览器中引用它来使用该库 如下所示 它使用全局对象命名空间变量 Rx 导入 我可以制作可观察的东西并做所有有趣的事情 当我将 src 更改为指向最新的 UMD 文件时 一切都会崩溃 如下所
  • 页面上使用 HTML Editor Extender 进行回发会导致 IE11 中出现 JavaScript 错误

    我已将 HTML 编辑器扩展程序添加到我正在处理的页面中 现在每当我在页面上发回帖子时 都会收到以下 Javascript 错误 JavaScript 运行时错误 参数无效 之后什么也没有发生 这在 IE10 或更低版本以及我所知道的所有其
  • 可以设置标题样式吗? (并且使用CSS或js?)[重复]

    这个问题在这里已经有答案了 我想知道是否可以设计一个title a href title This is a title Hello a 样式问题有两个方面 文本格式 编码 我猜这是可能的 所以在问题中这样做 工具提示样式 你能把它弄大一点
  • Vue 和 Vuex:处理依赖的计算属性

    我的应用程序是一个使用 Vuex 在 Vue 中构建的精简电子表格 关键组件是TableCollection Table and Row The TableCollection有一个包含多个的数组Table对象 每个Table有一个包含多个
  • 对于只触及我的工作表的 Google 表格脚本,收到“此应用程序未经验证”

    我正在编写一个 Google Sheets 脚本 我只想访问与 gs 文件关联的同一电子表格中的数据 似乎我应该有权在自己的电子表格中运行脚本 但是每当我运行一个函数时 我都会得到一个This app isn t verified信息 我该
  • 在 Javascript 中连接空数组

    我正在浏览一些代码 我想知道这有什么用处 grid push concat row 根据我的理解 它等同于 grid push row 为什么要大惊小怪 连接 你想使用 concat当您需要展平数组并且没有由其他数组组成的数组时 例如 va
  • 在 Shopify 商店中嵌入 Vue 组件

    在产品页面中 我尝试显示自定义 Vue 组件 为简洁起见 该组件根据给定的产品 ID 显示 Firebase 数据库中的一些信息 我最初尝试将其制作为 Shopify 应用程序 以便我可以访问他们的 API 我实现了 OAuth 并且可以检
  • 如何隐藏/禁用 Highcharts.js 中的图例框?

    我想问是否可以使用 HighCharts js 库隐藏图表中的所有图例框 var chart object chart renderTo render to type graph type colors graph colors title
  • 如何用另一个响应替换窗口的 URL 哈希?

    我正在尝试使用替换方法更改哈希 URL document location hash 但它不起作用 function var anchor document location hash this returns me a string va
  • 如何确定所有角度2分量都已渲染?

    当所有 Angular2 组件完成渲染时 是否会触发一个角度事件 For jQuery 我们可以用 function 然而 对于 Angular2 当domready事件被触发 html 只包含角度组件标签 每个组件完成渲染后 domrea
  • 如何使用asm.js进行测试和开发?

    最近我读到asm js规范 看起来很酷 但是是否有任何环境 工具来开发和测试这个工具 这还只是处于规范阶段吗 您可以尝试使用 emscripten 和 ASM JS 1 并从侧分支在 firefox 构建中运行它 有关 asm js 的链接

随机推荐

  • 用于添加 Runbook 和模块的 ARM 模板

    目前 我正在 azure 门户中手动上传 azure 运行时自动化 Runbook 的自定义模块 然后 我还手动创建一个运行手册来执行我的自定义模块 我想通过 ARM 脚本来完成此操作 我认为您在 azure 门户中可以做的所有事情在 AR
  • 如何获取 select 标签的 ng-model 以获得最初选择的选项?

    我对 Angular 还很陌生 所以我可能会搞错 我有一个类似于以下内容的
  • 无法在 VBA 中从 XML 文件获取数据?

    我试图从 XML 文件获取数据 但无法获取 我不知道我在这里缺少什么 XML 文件
  • Facebook 页面访问令牌 - 这些令牌会过期吗?

    我正在构建一个应用程序 允许用户管理他们的 Facebook 粉丝页面 这需要以下两个访问令牌 用户访问令牌 页面访问令牌 我非常熟悉用户访问令牌 但不熟悉页面访问令牌 有人知道页面访问令牌的有效期是多久吗 我在 Facebook 网站上能
  • 如何在动态列表视图中导航到下一页 - Flutter

    我有一个清单类别并使用将其显示在 ListTile 中列表视图生成器 我想转到被点击的特定类别页面 代码示例 final category Category One Category Two Category Three 我正在写导航器 p
  • 仅返回数组中的重复条目(不区分大小写)

    我想从数组中检索所有不区分大小写的重复条目 这在 PHP 中可能吗 array 1 gt 1233 2 gt 12334 3 gt Hello 4 gt hello 5 gt U 所需的输出数组 array 1 gt Hello 2 gt
  • 创建一个可以通过 USB 线发送/接收数据的 iPad 应用程序?

    我想创建一个 iPad 应用程序 通过 USB 连接到另一台机器 笔记本电脑或其他设备 并与我开发的运行在那里的其他应用程序进行通信 我知道这很容易通过蓝牙或 WiFi 实现 但这套特定的解决方案必须通过 USB 电缆完成 是否可以在不访问
  • Android,setonclicklistner 动态生成文本视图数组

    我有一个动态生成的文本视图数组 for int i 0 i lt blog link counter i textViewArray i new TextView this textViewArray i setText Html from
  • Apache POI 在读取 xlsx 文件时获取单元格颜色

    大家好 我正在读一本xlsx文件使用XSSF of Apche POI 现在我想读取单元格的颜色并在新单元格上应用相同的颜色xlsx文件 我该怎么做呢 我的代码是 public void readXLSXFile String filePa
  • JQuery 自动完成

    我的 jQuery 自动完成字段有问题 这有点奇怪 这是我的自动完成字段和脚本 我的 mvc 函数的响应工作正常 下拉列表是可见条目 但是当我尝试选择一个项目时 结果列表就会消失 有人有想法吗 div class ui widget div
  • Android:如何将联系人保存到 SD 卡作为 vCard。没有重复项?

    我正在尝试将手机上的所有联系人作为 vcf 文件 vCard 保存到 SD 卡中 它有效 但我有一个问题 每个具有多个电话号码 手机号码和工作号码 的联系人都会保存两次 这两个号码都在每个重复的联系人中 因此它们是正确的 只是重复的 有人可
  • 如何使用 Java 将 bytea 列下载为文件

    我想使用java下载以bytea格式存储的文件 我没有超级用户权限 使用下面的代码我下载十六进制编码的文件并将其转换为pdf 但转换后的pdf已损坏 而如果我通过终端使用 copy函数 不能在java中使用 复制 下载过程会顺利进行 Str
  • opencv - 计算来自canny的非方向边

    谁能帮助我如何使用opencv cannyedge检测来计算非方向边缘的数量 我有一个来自 opencv 的 cannyEdge 图像 我想要一个基于边缘方向的直方图 这样我就可以计算方向和非方向边缘的数量 我认为您将边缘检测与梯度检测混淆
  • 如何在codeigniter中加载phpseclib

    如标题所示 有人实现了吗 将此库包含到 codeigniter v2 1 2 中的最佳实践是什么 我知道它可以通过像任何其他 PHP 应用程序一样简单地使用 include require 语句来完成 但是由于该项目一旦完成将移交给多个开发
  • 质因数和 JavaScript

    我被用于解决问题的 JavaScript 代码所困扰 该代码指出 13195 的质因数是 5 7 13 和 29 数字 600851475143 的最大质因数是多少 这不是作业 是在线编码 数学挑战 所以我想出了这个解决方案
  • Python:发送电子邮件时,始终在子句中被阻止:smtpserver = smtplib.SMTP("smtp.gmail.com",587)

    我正在编写一个 Python 程序来发送电子邮件 但每次执行该子句时 smtpserver smtplib SMTP smtp gmail com 587 它会阻塞在这里并始终保持执行状态 没有任何提示和错误 我不知道为什么 谁能帮助我 代
  • 创建 Python RPM

    我一直在阅读有关为 Python 2 6 4 创建 RPM 的内容 在此页面中 http docs python org distutils builtdist html它说你可以使用当前Python创建一个RPMpython setup
  • 使用 LINQ 查找重复行(带有指定列的列表)

    我使用下面的代码获取 3 列的重复行 字符串 日期 货币 我想知道是否有任何通用方法可以在此 LINQ 中输入动态列名列表来查找重复的行 DataTable allDuplicates dt AsEnumerable GroupBy dr
  • Windows 和 Linux 服务器中出现爆炸错误 \r\n 和 \n

    我使用爆炸函数将文本区域内容基于行获取到数组中 当我在本地主机 WAMPserver 2 1 中运行此代码时 它与此代码完美配合 arr explode r n getdata 当我上传到我的Linux服务器时 我每次都需要将上面的代码更改
  • Azure AD 预检请求未返回数据

    我目前正在尝试发送帖子请求至https login microsoftonline com XXX oauth2 token用于检索应用程序的访问令牌和刷新令牌的端点 使用 axios 向端点发送 post 请求时 会发送预检 但不会返回任