我想检索所有的用户从一个给定的领域与谷歌目录API(管理SDK)与PHP。
我已经阅读了所有相关的文档,但我找不到任何有效的解决方案。
我需要运行的GET请求是:
获取https://www.googleapis.com/admin/directory/v1/users?domain=example.com&maxresults=2
我试着用Curl运行它:
$curl_handle=curl_init();
$header = array();
$header[] = 'Content-length: 0';
$header[] = 'Content-type: application/json';
$header[] = 'client_id=xxx';
$header[] = 'client_secret=yyy&token=zzz' ;
curl_setopt($curl_handle, CURLOPT_HTTPHEADER,$header);
curl_setopt($curl_handle, CURLOPT_URL,'https://www.googleapis.com/admin/directory/v1/users?domain=westwing.fr&maxResults=2');
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Your application name');
$query = curl_exec($curl_handle);
curl_close($curl_handle);
echo $query;
结果如下:
{“错误”:{“错误”:[{“域”:“全局”,“原因”:“必需”,“消息”:“必需登录”,“位置类型”:“标头”,“位置”:“授权”}],“代码”:401,“消息”:“必需登录”}}
我假设有一个认证问题,但我不能解决它。请注意,我已经使用google-api-php-client来获取令牌和google登录。
谢了。
我修改了请求:
$thetok=array();
$thetok= json_decode($_SESSION["token"] ,true);
$thetoken = $thetok["access_token"] ;
//print_r($thetok);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.googleapis.com/admin/directory/v1/users?domain=example.com&maxResults=2&viewType=domain_public');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$headers[0] = 'Authorization: Bearer ' . $thetoken;
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
curl_close($ch);
print_r($response);
print_r($headers);
但答案仍然是:
我再次修改了它,现在我有一个403错误(权限不足):
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.googleapis.com/admin/directory/v1/users?domain=example.com&maxResults=2&viewType=domain_public&access_token='.$thetoken.'');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
curl_close($ch);
print_r($response);
print_r($headers);
只需在Authorization
标头中传递OAuth2.0访问令牌,如下所示:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.googleapis.com/admin/directory/v1/users?domain=example.com&maxResults=2&viewType=domain_public');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$headers[0] = 'Authorization: Bearer ' . $access_token;
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
curl_close($ch);
print_r($response);
不再需要client_id
和/或client_secret
;它们以前用于获取access_token
。
使用超级管理权限,我不能使用获得所有权(不允许操作)
我目前在我的网站上部署了Google Tag Manager,在我的容器中只有一个标准的Google Analytics标签,可以在每个页面上启动。我想捕捉我的网站访问者在我们的网站上搜索产品时使用的术语。回到Google Analytics,我启用了站点搜索,并在包含访问者站点搜索词的URL中提供了查询参数。然而,没有任何数据能够返回到Google Analytics中的站点搜索报告中,因此我想
所以在展示我的代码之前,让我解释一下我采取了哪些步骤来“正确”设置服务号环境。 > 然后我试图执行这样的事情: 或 这个代码会导致, 我做错了什么?在过去的两天里,我一直在寻找解决方案,并尝试了很多方法。我还不确定的解决方案之一是ntp同步(比如如何将服务器时间精确同步到ntp)。 任何建议都会很有帮助,谢谢! 更新:我还确保激活了Admin Directory SDK,并在开发者控制台上启用了域
我正在尝试学习如何在一个新网站上整合谷歌分析和定制事件跟踪。在研究它之后,我似乎无法理解Google Tag Manager和仅仅编写自定义事件跟踪代码之间的区别和关系。 Google Tag Manager是否只是一种更简单的跟踪信息的方法,而无需编写JS?
我正在阅读网络分析,遇到了GTM和GA。 似乎GA是谷歌提供的一项服务,它生成关于网站流量的报告和统计数据。根据我有限的理解,为了生成这些报告,我们需要在结束时执行某种类型的标记。 在GTM中,我们还需要在我们的网站上添加一些标签。 所以如果两个GA
我正在实施谷歌标签管理器为Android应用程序V4由我的营销团队要求为未来使用,我从来没有在GTM网站,所以我在这方面很天真。 我已经根据官方网站上的说明创建了帐户、容器和标签。我已经将tag manager与google analytics tracking id链接。我已经根据网站上的说明在我的应用程序中编写了代码,并将容器下载到原始文件夹中。 当我运行我的应用程序时,它会在logcat中给