【发布时间】:2020-01-09 19:27:28
【问题描述】:
我创建了一个 Edge 扩展程序,该扩展程序当前对我也开发的 Web API 进行 Ajax 调用以请求数据。目前经过数小时的测试,我知道 Ajax 调用可以正常工作并返回相关数据。
我的问题是,当我尝试从 Edge 扩展程序调用 Ajax 调用时,它会失败。它没有提供任何推理或错误,只是我添加到 Ajax 调用中的错误消息(错误:...。见下文)。在 chrome 中测试了完全相同的扩展和对我的 Web API 的 Ajax 调用后,来自扩展内的 Ajax 调用可以正常工作并返回我可以使用的数据。
$(document).ready(function () {
$select = $('#brandDropdownList');
$.ajax({
type: "GET",
url: 'http://localhost:44358/api/brands',
dataType: 'JSON',
success:function(data) {
$select.html('');
$.each(data, function(key, val) {
$select.append('<option id="' + val.brand_id + '">' + val.brand_name + '</option>');
})
},
error: function(){
$select.html('<option id="-2">Please try again...</option>');
}
});
这是为什么?我没有错误或问题,它在 Chrome 中运行良好,但在 Edge 中却不行,不幸的是我必须在我正在进行的项目中使用 Edge。 我可以在开发工具的控制台中看到的唯一错误是有以下警告:
“由于 ms-browser-extension 中不安全的上下文或主机限制,serviceWorker.getRegistrations 被拒绝”
【问题讨论】:
-
嗨,欢迎来到 stackoverflow。您能否提供您用于执行 AJAX 的代码?此外,即使错误可能不会说明太多,如果您在此处粘贴其内容的副本,我们将不胜感激。有疑问请参考How to Ask部分
-
那我有办法解决这个问题吗?
标签: javascript jquery ajax microsoft-edge microsoft-edge-extension