Zend GData联系PHP,添加联系人SSL错误

时间:2014-08-12 16:27:15

标签: php zend-framework ssl

我想在谷歌帐户中做一个简单的联系人条目。

我的代码很简单但是我收到了下一个错误:“错误:预期的响应代码200,禁止403 GData联系人API仅支持通过SSL(https)的请求。”

我允许该应用程序在googgle帐户设置级别的谷歌降级工作。

可以帮助我吗?非常感谢。

编辑:我正在使用xampp并从localhost运行。我检查了所有的ssl设置,没问题。我用这个工具来检查 https://developers.google.com/gdata/articles/php_client_lib#windows并且它通过了。

<?php

// load Zend Gdata libraries
require_once 'Zend/Loader.php';
Zend_Loader::loadClass('Zend_Gdata');
Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
Zend_Loader::loadClass('Zend_Http_Client');
Zend_Loader::loadClass('Zend_Gdata_Query');
Zend_Loader::loadClass('Zend_Gdata_Feed');



error_reporting(0);

function IngresaGoogle($cod,$nom,$ape,$dir,$tel,$doc,$espe){

// set credentials for ClientLogin authentication
$user = "xx";
$pass = "yy";

try {


  // perform login and set protocol version to 3.0
  $client = Zend_Gdata_ClientLogin::getHttpClient(
$user, $pass, 'cp');
  $gdata = new Zend_Gdata($client);
  $gdata->setMajorProtocolVersion(3);

  // create new entry
  $doc  = new DOMDocument();
  $doc->formatOutput = true;
  $entry = $doc->createElement('atom:entry');
  $entry->setAttributeNS('http://www.w3.org/2000/xmlns/' ,
   'xmlns:atom', 'http://www.w3.org/2005/Atom');
  $entry->setAttributeNS('http://www.w3.org/2000/xmlns/' ,
   'xmlns:gd', 'http://schemas.google.com/g/2005');
  $doc->appendChild($entry);

  // add name element
  $name = $doc->createElement('gd:name');
  $entry->appendChild($name);
  $fullName = $doc->createElement('gd:fullName', '$nom');
  $name->appendChild($fullName);


  // insert entry
  $entryResult = $gdata->insertEntry($doc->saveXML(), 
   'http://www.google.com/m8/feeds/contacts/default/full');
  echo '<h2>Add Contact</h2>';
  echo 'The ID of the new entry is: ' . $entryResult->id;
} catch (Exception $e) {
  die('ERROR:' . $e->getMessage());
}
}
?> 

1 个答案:

答案 0 :(得分:0)

我找到了答案。

Zden的代码已经过时了。

您必须拨打'http ** S **://www.google.com/m8/feeds/contacts/default/full'而不是正常的。