Я использую 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&cht=p&chl=One|Two|Three&chd=e:VVqq.." width="300" height="200" alt="It worked!" />
отлично работает на веб-странице, но src вырезает и вставляет в адресную строку браузера не:
http://chart.apis.google.com/chart?chs=300x200&cht=p&chl=One|Two|Three&chd=e:VVqq..
Я не знаю, еслиэто проблема кодирования или что-то еще.Я безуспешно пытался встроить эти диаграммы в электронное письмо в формате HTML, и мне интересно, приведет ли эта часть к решению.Спасибо за вашу помощь!
Браузер интерпретирует экранированные амперсанды & в реальные амперсанды & при использовании в теге изображения, но не при непосредственном размещении в адресной строке.
&
&
URL http://chart.apis.google.com/chart?chs=300x200&cht=p&chl=One|Two|Three&chd=e:VVqq.. отлично работает в браузере.
http://chart.apis.google.com/chart?chs=300x200&cht=p&chl=One|Two|Three&chd=e:VVqq..
У вас есть HTML-объекты в URL. Просто используйте HTML-декодер сущностей :
http://chart.apis.google.com/chart?chs=300x200&cht=p&chl=One|Two|Three&chd=e:VVqq.
Это версия HTML-декодированной сущности URL, которая у вас есть выше. Просто запустите его через связанный с ним декодер.
Надеюсь, это поможет!