Mat*_*ada 4 html php curl google-apps web
我过去通过向" http://www.google.com/a/ {domain} / " 执行CURL请求并检查此字符串来评估某个域是否包含Google Apps "[在此处登录控制面板]",如果它有,它有Google Apps,如果没有,他们没有Google Apps.
但最近谷歌改用了通用的http://admin.google.com登录页面,并没有对域名进行区分.现在这显然打破了我以前检查它是否有Google Apps的方式.
有没有人有任何其他的解决方法来做到这一点?
我尝试了一些来自Google API的网址,但是他们需要Auth ...
注意:我不希望通过MX/TXT记录进行检查,我需要检查他们是否有Google Apps,而不是他们是否使用过Google Apps.这样做的原因是我开发了一个Google Apps Toolkit,它进行了一系列检查,并给出了域的状态,我用来测试域名是否具有100%准确性的域名的旧方法,以及其他所有在线Google Apps测试人员我使用它是相当不准确的,因为他们检查MX记录.我不想陷入这个陷阱.这对曾经拥有Google Apps但又转移到其他提供商并希望转回经销商的域名非常有用(它比您想象的更频繁,我为经销商工作)
Mat*_*ada 10
我成功地弄明白了!
要确定某个域是否已在其上购买Google Apps,请执行以下操作:
执行CURL请求:" https://www.google.com/a/ {domain}/ServiceLogin"
搜索以下字符串:" 对不起,你所到达的是没有使用域登录页面 ",如果它包含字符串,它并不会有谷歌应用程序,如果它不具有该字符串比它确实包含Google Apps.
一个示例PHP函数(我在这个例子中使用的是file_get_contents而不是CURL,因为它更短,请注意你需要在php.ini中启用基于URL的位置)
function lookupGoogleAccount($domain) {
$url = "https://www.google.com/a/$domain/ServiceLogin";
$extpage = file_get_contents($url);
$not_gapps = strpos($extpage,"Sorry, you've reached a login page for a domain that isn't using");
return !$not_gapps;
}
Run Code Online (Sandbox Code Playgroud)
示例:https://gapps.qk.com.au/?domain = when.io
使用此方法即使域是经销商并使用自定义SSO解决方案,它仍应继续工作.
| 归档时间: |
|
| 查看次数: |
3174 次 |
| 最近记录: |