动态Google API重定向网址

时间:2012-05-13 06:31:23

标签: google-contacts

我正在为社交网络编写谷歌联系人导入代码,这种导入发生在用户页面上,其中网址将因用户而异。 profile / user1,profile / user2

然而,谷歌我似乎只能设置一个重定向网址,似乎无法找到谷歌允许通配符匹配域而不是特定网址的任何提及。

有没有办法做到这一点,还是我必须将它设置为一个网址?

提前致谢。

5 个答案:

答案 0 :(得分:11)

我有PHP代码来实现它。说它无法完成是错误的。我将此技术用于Google Analytics,Adwords,Google +和YouTube。它适用于所有提到的服务。

Trick是使用“state”参数作为动态URL。我希望它能帮到每个人。

// Auth URL
// $campaign_id will be different for everyone
$dynamic_redirect = 'http://' . $_SERVER['HTTP_HOST'] . "/analytics/$campaign_id";
$client_id = 'XXXXXXXX';
$redirect_uri = 'API_REDIRECT_URI'; // Fixed URL, it will not be changed

$auth_url = "https://accounts.google.com/AccountChooser?service=lso&continue=";
$auth_url .= urlencode("https://accounts.google.com/o/oauth2/auth?response_type=code&scope=https://www.googleapis.com/auth/analytics.readonly&access_type=offline&redirect_uri=$redirect_uri&approval_prompt=force&state=$dynamic_redirect&client_id=$client_id");


/*************************************/
API_REDIRECT_URI PAGE
/*************************************/
$redirect_url = $_GET['state'];

答案 1 :(得分:6)

我发现这是不可能的,所以如果有人在寻找这个,那就没办法了。我最终解决了我的问题,只是让谷歌重定向到一个固定的网址,所以不是一个动态的。

答案 2 :(得分:1)

你可以做一件简单的事情。在创建Auth URL时将“用户页面URL”置于会话中。在您的回拨页面上,从会话中获取“用户页面网址”,并将用户简单地重定向到该页面。

我能够成功使用PHP。

答案 3 :(得分:0)

正如我所知,有可能这样做的应用程序。我发现这篇文章是关于如何做到的 - 还没有尝试过,但它值得一试: http://www.ioncannon.net/programming/1443/google-oauth-for-installed-apps-php-example/

答案 4 :(得分:0)

我们可以在Google API设置中指定多个重定向URI,每行一个

Google API控制台 - >选择您的API - > API访问 - >编辑设置 - >在“授权重定向URI”下

输入..

http://one.example.com/contactimporter.php

http://two.example.com/contactimporter.php