Решил это!
Я узнал, что использовал SimpleAnnotationReader, который не нравится аннотации, созданные командой инструмента orm cli, которые я использовал:
php cli-doctrine.php orm:convert-mapping --from-database annotation models/entities
As вы можете увидеть здесь, в методе «createAnnotationMetadataConfiguration» класса Doctrine \ ORM \ Tools \ Setup последний параметр указывает на использование простейшего редактора:
/**
* Creates a configuration with an annotation metadata driver.
*
* @param array $paths
* @param boolean $isDevMode
* @param string $proxyDir
* @param Cache $cache
* @param bool $useSimpleAnnotationReader
*
* @return Configuration
*/
public static function createAnnotationMetadataConfiguration(array $paths, $isDevMode = false, $proxyDir = null, Cache $cache = null, $useSimpleAnnotationReader = true)
{
$config = self::createConfiguration($isDevMode, $proxyDir, $cache);
$config->setMetadataDriverImpl($config->newDefaultAnnotationDriver($paths, $useSimpleAnnotationReader));
return $config;
}
Итак, все, что мне нужно сделать, чтобы заставить его работать, чтобы дать ему ложный флаг для использования simpleannotationreader (в моем загрузочном блоке Doctrine.php):
$config = Setup::createAnnotationMetadataConfiguration($metadata_paths, $dev_mode, $proxies_dir, null, false);
И теперь он отлично работает!
Пожалуйста, проверьте конечную точку, конечная точка неверна.
конечная точка должна быть следующей в соответствии с вашим кодом почтальона
https://us7.api.mailchimp.com/3.0//ecommerce/stores/store_001/products
Обновите то же самое.
Я вижу две вещи, которые могут быть проблемой.
Сначала - добавьте тип контента в ваши заголовки. Похоже, вы пытаетесь опубликовать строку json, поэтому имеет смысл, что ваш заголовок объявит об этом.
$headers = array(
'Authorization: Basic b3dhaXNfdGFhcnVmZjo5MzM1M',
'Content-Type: application/json' //Addded the content type as json.
);
Во-вторых, отправляемая вами строка json не является допустимой. Вам нужно удалить запятую с последнего элемента в строке.
$data_array = '
{
"id": "PRS08",
"title": "Php Curl",
"name": "Shahid Hussain",
"url": "http://fstnv.com",
"description": "This is test data"
}'; //Removed the comma after last element. Otherwise the json is invalid.
Посмотрите, поможет ли это вам.