Как получить параметры URL гаджетов Google
Гаджет Google - это iframe, встроенный в контейнер гаджетов, такой как Сайты Google. Пример: https://sites.google.com/site/michaelmccolin/test
Однако, поскольку гаджеты Google и Сайты Google находятся в двух разных доменах, вы не можете получить родительский URL гаджета, используя window.parent.location
, Хорошей новостью является то, что родительский URL-адрес включен в качестве значения параметра в URL-адрес гаджета (iframe). Пример:
https://slr19h92al8so047kuchhg5aog1sb42l-a-sites-opensocial.googleusercontent.com/gadgets/ifr?url=http://hosting.gmodules.com/ig/gadgets/file/116132513635841516857/sample.xml&container=enterprise&view=default&lang=en&country=ALL&sanitize=0&v=3bad4b3f87c8b199&libs=core&mid=167&parent=https://sites.google.com/site/michaelmccolin/test
Вопрос в том, как я могу получить parent
значение параметра из URL-адреса гаджета.
Спасибо!
1 ответ
Вы можете получить доступ к строке запроса следующим образом:
var queryString = location.search.substr( 1 );
С этого момента проще разделить его на разделители и создать из него объект:
var queryObject = {};
queryString.split( '&' ).forEach( function objectFromPair( pairString ){
var pairArray = pairString.split( '=' );
queryObject[ pairArray[ 0 ] ] = pairArray[ 1 ];
} );
Затем найдите parent
ключ:
var parentUrl = queryObject.parent;