GoodData: Как заставить макросы Dashboard работать в Firefox?

Я могу встраивать контент из своего приложения в панель инструментов GoodData, используя «Веб-контент». Макросы информационных панелей — это способ настройки контента в зависимости от информационных панелей, в которых он появляется — некоторые ссылки: http://developer.gooddata.com/article/how-to-use-dashboard-macros

http://developer.gooddata.com/article/dashboard-macro-reference

Я пытаюсь встроить контент в ссылку следующим образом:

http://myserver.com/apps/my_app#%CURRENT_DASHBOARD_URI%/%CURRENT_DASHBOARD_TAB_URI%

Он отлично работает в Chrome, но делает странные вещи в Firefox. Похоже, что макросы не работают - %CURRENT_DASHBOARD_URI% не заменяется строкой вроде %2Fgdc%2Fmd%2FGoodSalesDemo%2Fobj%2F1952, как это предлагается в документах.


person pcv    schedule 11.03.2014    source источник


Ответы (1)


На самом деле макросы работают в Firefox, проблема заключается именно в том, как Firefox работает с декодированием URL-адресов. Chrome не декодирует строковый URI панели инструментов, поэтому вы получаете:

http://myserver.com/apps/my_app#%2Fgdc%2Fmd%2FGoodSalesDemo%2Fobj%2F1952/85f6945b672d

Firefox выполняет декодирование за вас, и вы получаете

http://myserver.com/apps/my_app#/gdc/md/GoodSalesDemo/obj/1952/85f6945b672d

Поэтому косая черта не подходит для разделения %CURRENT_DASHBOARD_URI% и %CURRENT_DASHBOARD_TAB_URI% в вашем приложении.

Также при анализе параметров из URL-адреса вы должны убедиться, что он декодирован, например. функция decodeURIComponent в JavaScript. декодирование не повредит уже декодированную строку в Firefox и декодирует строку в Chrome.

person pcv    schedule 11.03.2014