Ich habe eine Anwendung von mean-stack
, die eine Website und ein Excel-Add-in hostet. html5
aktiviert ist, und es hatKonflikt von displayDialogAsync und html5-history-api
<script src="https://appsforoffice.microsoft.com/lib/1/hosted/office.js"></script>
<script src="https://cdn.rawgit.com/devote/HTML5-History-API/master/history.js"></script>
In der Excel-Add-in, habe ich eine Schaltfläche, um eine Seite auf der Website von Dialog API öffnet:
$scope.openDialog = function() {
Office.context.ui.displayDialogAsync("https://localhost:3000/preview/tmp/6wr-4PqdBrYQwjp3AAAD", {}, function() {})
}
Wenn ich auf diese Schaltfläche klicken in Excel Online in Chrome öffnet es ein Dialogfeld mit der folgenden URL (beachten Sie, dass und mehrere %2F
werden systematisch angehängt), aber es verhindert nicht, die Seite gut anzuzeigen.
https://localhost:3000/preview/tmp/6wr-4PqdBrYQwjp3AAAD?_host_Info=excel|web|16.00|en-us|b6f37f78-e519-7d03-0069-b9c4317a362c|isDialog#%2Fpreview%2Ftmp%2F6wr-4PqdBrYQwjp3AAAD%3F_host_Info=excel%7Cweb%7C16.00%7Cen-us%7Cb6f37f78-e519-7d03-0069-b9c4317a362c%7CisDialog
Allerdings, wenn ich auf diese Schaltfläche in Excel Online in Firefox klicken, ändert sich die URL schnell auf die folgende URL, die auf der Homepage der Website anzuzeigen stellt sich heraus:
https://localhost:3000/home#%2Fpreview%2Ftmp%2F6wr-4PqdBrYQwjp3AAAD%3F_host_Info=excel%7Cweb%7C16.00%7Cen-gb%7C919fff78-e51f-dc20-0c3c-871b7d0ec25d%7CisDialog
Also meine Fragen sind:
1) Warum fügt Office.context.ui.displayDialogAsync
systematisch #
und %2F
der URL meiner Website hinzu? Ist es möglich, dies zu verhindern?
2) Ist es möglich, eine URL (unabhängig von #
und %2F
) zu erstellen, die Firefox akzeptiert?
Bearbeiten 1: Es scheint, dass wenn ich html5-history-api
nicht verwende, es funktioniert. So kann nicht html5-history-api
für das displayDialogAsync
deaktivieren? (Der Grund, warum ich habe html5-history-api
nach office.js
zu verwenden ist here.)
Können Sie einen Link teilen, über den Personen das von Ihnen beschriebene Verhalten testen können? –
@VivekAthalye Sorry, im Moment habe ich keinen anderen Domain-Namen mit SSL, der eine Mean-Stack-Anwendung hostet ... – SoftTimur