URL-адрес диаграммы Google работает в теге img, но не в строке адреса браузера. - PullRequest
0 голосов
/ 27 июля 2010

Я использую django-googlecharts для создания простой круговой диаграммы.Внутри тега img он работает просто отлично, но если я вставлю img src в адресную строку браузера, Google выдаст «Bad Request», «Ваш клиент отправил неверный или недопустимый запрос».

Я следовал примеру в документации django-googlecharts здесь:

http://github.com/jacobian/django-googlecharts/blob/master/docs/examples.html

, и на самом деле эти примеры из документации имеют ту же проблему.Так, например:

<img src="http://chart.apis.google.com/chart?chs=300x200&amp;cht=p&amp;chl=One|Two|Three&amp;chd=e:VVqq.." width="300" height="200" alt="It worked!" />

отлично работает на веб-странице, но src вырезает и вставляет в адресную строку браузера не:

http://chart.apis.google.com/chart?chs=300x200&amp;cht=p&amp;chl=One|Two|Three&amp;chd=e:VVqq..

Я не знаю, еслиэто проблема кодирования или что-то еще.Я безуспешно пытался встроить эти диаграммы в электронное письмо в формате HTML, и мне интересно, приведет ли эта часть к решению.Спасибо за вашу помощь!

Ответы [ 2 ]

1 голос
/ 27 июля 2010

Браузер интерпретирует экранированные амперсанды &amp; в реальные амперсанды & при использовании в теге изображения, но не при непосредственном размещении в адресной строке.

URL http://chart.apis.google.com/chart?chs=300x200&cht=p&chl=One|Two|Three&chd=e:VVqq.. отлично работает в браузере.

1 голос
/ 27 июля 2010

У вас есть HTML-объекты в URL. Просто используйте HTML-декодер сущностей :

http://chart.apis.google.com/chart?chs=300x200&cht=p&chl=One|Two|Three&chd=e:VVqq.

Это версия HTML-декодированной сущности URL, которая у вас есть выше. Просто запустите его через связанный с ним декодер.

Надеюсь, это поможет!

...