2017-08-17 5 views
1

Ich entwickle Office-Add-in mit Office-JS-API. Es muss auf der SAP Cloud Platform als HTML5-Anwendung gehostet werden.Office js api - schlechte Anfrage wegen _host_info

Das Problem ist, dass, wenn ich das Add-In von der Desktop-Version (Excel 2016) ausführen Fehler ADD-IN ERROR ein Problem beim Versuch, dieses Add-in zu erreichen. Ich habe die Anfrage in Fiddler verfolgt und die Ursache gefunden - es ist der _host_info Parameter, der der GET-Anfrage hinzugefügt wurde. Es hat Parameter, die durch "|" begrenzt sind. Cloud Platform hat Probleme beim Analysieren dieser URL und antwortet mit 400 Bad Request.

Probe von Fiddler:

GET /index.html?_host_Info=Excel|Win32|16.01|en-US HTTP/1.1 

Es ist das Add-In von 365 Office-Version ausgeführt wird, ist alles ok - die _host_info Parameter in Anfrage nicht vorhanden ist.

Gibt es eine Möglichkeit, wie das funktioniert?

  1. Kann ich zwingen, irgendwie die Excel die _host_info Parameter zu überspringen/kodieren?
  2. Kann ich die SAP Cloud Platform davon überzeugen, die URL "|" im URL-Abfrageparameter zu akzeptieren?

Vielen Dank für Ihre Ideen!

+1

Was ist die Version und Build-Nummer Ihres Desktops Excel 2016? –

+0

Klingt wie ein Fehler von Microsoft. Der _host_Info-Parameter sollte URL-codiert sein und dann akzeptiert SCP ihn. –

+0

@RickKirkham Microsoft Excel 2016 MSO (16.0.7329.1047) 32-Bit Interessant ist, dass MS weiß dies und entfernte den Parameter aus der Web-Version früher (es gibt Thread auf Stackoverflow darüber) – mikeek

Antwort

0

Der Parameter _host_info kann nicht übersprungen werden, da die richtigen JS-Skripts heruntergeladen werden müssen. Der Server-Client verwendet eine andere Codierung. Einige Server können | nicht verarbeiten und das ist einer der Fälle. Ich kenne zu diesem Zeitpunkt keine Milderung. Wir werden mit jedem Vorschlag zurückkommen.

+0

Gibt es einen Fortschritt? – mikeek

+0

Wir haben die Dokumente hier aktualisiert: https://dev.office.com/docs/add-ins/develop/dialog-api-in-office-add-ins. Grundsätzlich fügt Office der URL, die an displayDialogAsync übergeben wird, automatisch einen Abfrageparameter namens _host_info hinzu. (Sie wird ggf. nach Ihren benutzerdefinierten Abfrageparametern angefügt. Sie wird nicht an nachfolgende URLs angehängt, zu denen das Dialogfeld navigiert). –

+0

Für die Probleme, die von Hostinfo in Auth-Seite angehängt werden, ist Umgehungsmöglichkeit (1) Öffnen Sie den Dialog in Ihrer eigenen Domain-Seite (2) Auf dieser Seite, umleiten, um die Auth-Seite. In diesem Fall fügen wir Hostinfo nach der Umleitung nicht an, und es sollte das Problem beheben. –