При запуске приложения SharePoint 2016 из VS2019 (режим отладки) я захожу в «Настройки сайта» в IE 11 и нажимаю на свою ссылку. Когда я это сделаю, я получу это
Если я нажму «Разрешить», я получу еще одно всплывающее окно с сообщением «Вам понадобится новое приложение, чтобы открыть локальный хост». Я прочитал об этом и вижу, что страница, скорее всего, жалуется на то, что URL-адрес сформирован неправильно, но это та же самая ссылка, которая когда-либо была на этой странице (http://localhost//). Я не знаю, почему это происходит.
Страница представляет собой обычную страницу aspx с Sharepoint и AngularJS:
<%@ Assembly Name="Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Page Language="C#" MasterPageFile="~masterurl/default.master" Inherits="Microsoft.SharePoint.WebPartPages.WebPartPage" meta:progid="SharePoint.WebPartPage.Document" meta:webpartpageexpansion="full" %>
<%@ Register TagPrefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register TagPrefix="SharePointWebControls" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint" %>
<asp:Content ID="Content1" ContentPlaceHolderID="PlaceHolderAdditionalPageHead" runat="server">
<script src="/_layouts/packages/angular.1.6.9/angular.min.js"></script>
<script>
var app = angular.module('my-app', []);
angular.element(function () {
document.getElementById("myFrame").src = document.location.protocol == "http:" ?
document.location.hostname + ':8368/Pages/mypage.aspx?' + window.location.search.substr(1) :
document.location.hostname + ':8268/Pages/mypage.aspx?' + window.location.search.substr(1);
});
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="PlaceHolderMain" runat="server">
<body class="flex-container">
<div>
<iframe style="width:100%; height:850px" frameborder="0" id="myFrame"></iframe>
</div>
</body>
</asp:Content>
В основном это две страницы - одна для http и https. Они загружаются в iframe (по уважительной причине, которая не имеет значения). Затем загружается моя страница контента:
<!DOCTYPE html>
<script src="/Scripts/jquery/jquery-1.12.4.min.js"></script>
<link rel="stylesheet" href="/Content/kendo/kendo.bootstrap.min.css" />
<link rel="stylesheet" href="/Content/kendo/kendo.common.min.css" />
<link rel="stylesheet" href="/Content/kendo/kendo.common-bootstrap.core.min.css" />
<link rel="stylesheet" href="/Content/kendo/kendo.common-bootstrap.min.css" />
<script src="/Scripts/kendo/kendo.all.min.js"></script>
<link href="/Content/bootstrap.min.css" rel="stylesheet" type="text/css" />
<script src="/Scripts/bootstrap/bootstrap.min.js"></script>
<script src="/Scripts/angular/angular.js"></script>
<script src="/Scripts/angular/angular-touch.js"></script>
<script src="/Scripts/angular/angular-animate.js"></script>
<link rel="stylesheet" href="/Content/Page.css" />
<style>
.k-button {
margin: 0 10px 0 0;
}
::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
color: gray;
opacity: 0.7; /* Firefox */
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
color: gray;
opacity: 0.7;
}
::-ms-input-placeholder { /* Microsoft Edge */
color: gray;
opacity: 0.7;
}
.k-textbox {
width: 100%;
}
</style>
Page details
It's not getting this far but I posted it just to provide the context. The main issue is why I get a message saying I need to have an app to run local host.