【问题标题】:How to pass credentials using import statement?如何使用导入语句传递凭据?
【发布时间】:2019-10-29 21:41:46
【问题描述】:

我有一个 .net 4.7.2 应用程序。它具有使用导入动态加载更多 javascript 的 javascript。

https://v8.dev/features/dynamic-import

问题是在获取这些文件时,它会在应用程序中获得 401 未授权。我已经确认运行该应用程序的用户实际上对这些文件具有读/写访问权限。如果他们直接在浏览器地址栏中访问该文件,他们可以看到该文件。

我想知道在执行这些 js 导入命令时,是否真的将 windows 凭据传递给它?

谢谢

【问题讨论】:

  • 这对你来说可能很有趣:github.com/tc39/proposal-dynamic-import/issues/60 它指出由 导入的脚本中的动态导入将通过凭据。
  • 但是我用的是js导入功能。
  • 是的,但我的意思是您使用导入功能的地方是在 JavaScript 文件中,对吗?所以这个文件必须在某个地方导入到 html 中才能在浏览器中使用
  • 你能举个语法例子吗?

标签: javascript asp.net import dynamic-import


【解决方案1】:

据我了解this source:

--- html

<html>
  <head>
     <script src="foo.js" crossorigin="use-credentials"></script>
  </head>
</html>

--- 脚本 foo.js

// load script dynamically
const path = 'foo/bar'
const module = await import(`https://api.example.com/${path}/module.mjs`);

【讨论】:

  • 但问题是所有资源仍然在同一个域中。这还能用吗?
  • 外部导入也应该可以工作。如果你像这样使用它,你可能必须禁用 webpack import(/*webpackIgnore: true*/ 'api.example.com/dynamic-import.js');
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-25
  • 2015-03-07
  • 1970-01-01
  • 1970-01-01
  • 2015-11-04
相关资源
最近更新 更多