Obter Atributos (.NET)

Descrição

GetAttributes() é usado para buscar experimentação e experiências personalizadas de Target e extrair valores de atributos.

Método

getAttributes

TargetAttributes TargetClient.GetAttributes(TargetDeliveryRequest targetRequest, params string[] mboxes)

Parâmetros

Nome
Tipo
Obrigatório
Padrão
Descrição
targetRequest
TargetDeliveryRequest
Não
null
A mesma solicitação Target usada para Obter Ofertas​
mboxNames
cadeia de caracteres de parâmetros[]
Não
null
Uma matriz de parâmetros de nomes de mbox

Resultado

Um objeto TargetAttributes é retornado de TargetClient.GetAttributes() que tem as seguintes propriedades e métodos:

Propriedade/Método
Tipo de retorno
Descrição
Resposta
TargetDeliveryResponse
Retorna o objeto de resposta normalmente retornado por Obter Ofertas
ToDictionary
IReadOnlyDictionary
Retorna um dicionário de dicionários com pares de valores chave agrupados por nomes de mbox
ToMboxDictionary(mboxName)
IReadOnlyDictionary
Retorna um dicionário com os pares de chave-valor da mbox fornecida
GetBoolean(mboxName, chave, defaultValue)
bool
Retorna o valor de um nome de mbox e uma chave de atributo especificados
GetString(mboxName, chave, defaultValue)
string
Retorna o valor de um nome de mbox e uma chave de atributo especificados
GetInteger(mboxName, chave, defaultValue)
int
Retorna o valor de um nome de mbox e uma chave de atributo especificados
GetDouble(mboxName, chave, defaultValue)
duplo
Retorna o valor de um nome de mbox e uma chave de atributo especificados
GetValue(mboxName, chave, defaultValue)
T
Retorna o valor de um nome de mbox e uma chave de atributo especificados

Exemplo

.NET

var targetClientConfig = new TargetClientConfig.Builder("acmeClient", "ABCDEF012345677890ABCDEF0@AdobeOrg")
    .Build();

var targetClient = TargetClient.Create(targetClientConfig);

var mboxRequests = new List<MboxRequest> { new (index: 1, name: "a1-serverside-ab") };

var targetDeliveryRequest = new TargetDeliveryRequest.Builder()
    .Build();

var offerAttributes = targetClient.GetAttributes(targetDeliveryRequest, "demo-engineering-flags");

//returns just the value of searchProviderId from the mbox offer
var searchProviderId = offerAttributes.GetString("demo-engineering-flags", "searchProviderId");

//returns a simple Dictionary representing the mbox offer
var engineeringFlags = offerAttributes.ToMboxDictionary("demo-engineering-flags");

//  the value of engineeringFlags looks like this
//  {
//      "cdnHostname": "cdn.cloud.corp.net",
//      "searchProviderId": 143,
//      "hasLegacyAccess": false
//  }

var assetUrl = $"http://{engineeringFlags["cdnHostname"]}/path/to/asset";
recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3