Google Charts создает относительный URL - PullRequest
0 голосов
/ 19 февраля 2019

Я использую Google Charts и замечаю, что URL диаграммы является относительным URL.Пример: //chart.googleapis.com вместо https://chart.googleapis.com

Если я создаю один HTML-файл с кодом диаграммы, URL-адрес в порядке (с https), но в файле, обслуживаемом PHPприложение, URL-адрес является относительным.

В нормальных ситуациях это не будет проблемой, но я экспортирую диаграмму в PDF, и без полного URL-адреса диаграмма не отображается в PDF. Имеету кого-нибудь была такая же проблема?

Рабочий пример:

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
  google.charts.load('current', {'packages':['imagesparkline']});
</script>
<div id="chart_div"></div>


<script>
  google.charts.setOnLoadCallback(drawChart);

  function drawChart() {

    var data = google.visualization.arrayToDataTable([
    ['Revenue', 'Licenses'],
    [435, 132],
    [438, 131],
    [512, 137],
    [460, 142],
    [491, 140],
    [487, 139],
    [552, 147],
    [511, 146],
    [505, 151],
    [509, 149]
    ]);

    var chart = new google.visualization.ImageSparkLine(document.getElementById('chart_div'));

    chart.draw(data, {width: 120, height: 40, showAxisLines: false,  showValueLabels: false, labelPosition: 'left'});
  }
</script>

Вот скрипка с рабочим примером: https://jsfiddle.net/br6837oq/

РЕШЕНИЕ

Решено это, заменив относительный URL-адрес на абсолютный:

$html = str_replace('src="//chart.googleapis.com', 'src="https://chart.googleapis.com', $html);

...