caponica/amazon-paa-bundle

Symfony2 服务,用于访问 Amazon 产品广告 API

dev-master 2016-09-29 22:01 UTC

This package is auto-updated.

Last update: 2024-09-15 09:54:24 UTC


README

通过 caponica/amazon-paa 的 Symfony 服务包装实现 Amazon PAA 集成

安装

使用 composer 安装,在 composer.json 文件的 require 部分添加以下内容

    "require": {
        ...
        "caponica/amazon-paa-bundle": "dev-master"
    },

在您的 kernel 中注册 bundle

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Caponica\AmazonPaaBundle\CaponicaAmazonPaaBundle(),
    );
}

配置

默认情况下,此 bundle 不会向您的项目添加服务。要添加服务,您需要定义参数,然后是服务本身。

要访问多个市场,创建多个服务(每个市场一个)。最简单的方法是使用参数(如下所示),但您可以使用任何您喜欢的方法来加载相关的配置参数,并将它们传递给 setConfig。

# app/config/parameters.yml
caponica_amazon_paa_config_de:
    access_key:     your_access_key_de
    secret_key:     your_secret_key_de
    associate_tag:  your_associate_tag_de
    domain_suffix:  'de'
caponica_amazon_paa_config_uk:
    access_key:     your_access_key_uk
    secret_key:     your_secret_key_uk
    associate_tag:  your_associate_tag_uk
    domain_suffix:  'co.uk'
# services.yml
    caponica_paa_client_de:
        class:      %caponica_amazon_paa.client.class%
        factory:    [ '%caponica_amazon_paa.client.class%', 'buildFromArray' ]
        arguments:  [ '%caponica_amazon_paa_config_de%' ]
    caponica_paa_client_uk:
        class:      %caponica_amazon_paa.client.class%
        factory:    [ '%caponica_amazon_paa.client.class%', 'buildFromArray' ]
        arguments:  [ '%caponica_amazon_paa_config_uk%' ]

使用方法

要访问服务,只需按您定义的服务名称引用它。例如,从控制器中

/** @var CaponicaAmazonPaa\Client\ApaaClient $apaaClientUk */
$apaaClientUk = $this->container->get('caponica_paa_client_uk');
$itemLookupResponse = $apaaClientUk->callItemLookupFull('B009O3VLPW');