4

我在网站上使用 Google Site Search。网站上有一个 cookie 提示器,在我们开始使用它们之前,它会要求用户接受 cookie。这工作正常。然而,在我们实施了谷歌搜索之后,事实证明谷歌也有几个 cookie。

我的问题是;我们如何让谷歌在用户接受它(或其他参数)之前不使用这些 cookie。

以下基本示例将使 Google 创建 2 个 cookie:

<script>
(function() {
  var cx = '012:345'; // Insert your own Custom Search engine ID here
  var gcse = document.createElement('script'); gcse.type = 'text/javascript'; gcse.async = true;
  gcse.src = (document.location.protocol == 'https' ? 'https:' : 'http:') +
      '//www.google.com/cse/cse.js?cx=' + cx;
  var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gcse, s);
})();
</script>

<gcse:search></gcse:search>

任何想法如何解决/解决这个问题?

4

1 回答 1

1

上面的代码负责加载脚本 google.com/cse.js。您可以等到用户接受 cookie 策略,而不是立即执行该功能:

<script>
var loadScript = function() {
  var cx = '012:345'; // Insert your own Custom Search engine ID here
  var gcse = document.createElement('script'); gcse.type = 'text/javascript'; gcse.async = true;
  gcse.src = (document.location.protocol == 'https' ? 'https:' : 'http:') +
      '//www.google.com/cse/cse.js?cx=' + cx;
  var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gcse, s);
};

// Here ask user for cookies etc.

// Then load script.
loadScript();
</script>

<gcse:search></gcse:search>
于 2013-11-12T10:05:07.640 回答