AWS SDK와 ListOpportunities 함께 사용 - AWS SDK 코드 예제

Doc AWS SDK 예제 GitHub 리포지토리에서 더 많은 SDK 예제를 사용할 수 있습니다. AWS

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS SDK와 ListOpportunities 함께 사용

다음 코드 예시는 ListOpportunities의 사용 방법을 보여 줍니다.

.NET
SDK for .NET

기회를 나열합니다.

// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // PDX-License-Identifier: Apache-2.0 using System; using Newtonsoft.Json; using Amazon; using Amazon.Runtime; using Amazon.PartnerCentralSelling; using Amazon.PartnerCentralSelling.Model; namespace AWSExample { class Program { static readonly string catalogToUse = "Sandbox"; static async Task Main(string[] args) { // Initialize credentials from .aws/credentials file var credentials = new Amazon.Runtime.CredentialManagement.SharedCredentialsFile(); if (credentials.TryGetProfile("default", out var profile)) { AWSCredentials awsCredentials = profile.GetAWSCredentials(credentials); //var config = new AmazonPartnerCentralSellingConfig() //{ // ServiceURL = "https://partnercentral-selling.us-east-1.api.aws", //}; //var client = new AmazonPartnerCentralSellingClient(awsCredentials, config); var client = new AmazonPartnerCentralSellingClient(awsCredentials); var request = new ListOpportunitiesRequest { Catalog = catalogToUse, MaxResults = 2 }; try { var response = await client.ListOpportunitiesAsync(request); Console.WriteLine(response.HttpStatusCode); foreach (var opportunity in response.OpportunitySummaries) { Console.WriteLine("Opportunity id: " + opportunity.Id); } string formattedJson = JsonConvert.SerializeObject(response.OpportunitySummaries, Formatting.Indented); Console.WriteLine(formattedJson); } catch(ValidationException ex) { Console.WriteLine("Validation error: " + ex.Message); } catch (AmazonPartnerCentralSellingException e) { Console.WriteLine("Failed:"); Console.WriteLine(e.RequestId); Console.WriteLine(e.ErrorCode); Console.WriteLine(e.Message); } } else { Console.WriteLine("Profile not found."); } } } }
  • API 세부 정보는 API 참조의 ListOpportunitiesAWS SDK for .NET 를 참조하세요.

Go
SDK for Go V2

기회를 나열합니다.

package main import ( "context" "encoding/json" "fmt" "log" "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/config" "github.com/aws/aws-sdk-go-v2/service/partnercentralselling" ) func main() { config, err := config.LoadDefaultConfig(context.TODO()) if err != nil { log.Fatal(err) } config.Region = "us-east-1" client := partnercentralselling.NewFromConfig(config) output, err := client.ListOpportunities(context.TODO(), &partnercentralselling.ListOpportunitiesInput{ MaxResults: aws.Int32(2), Catalog: aws.String("AWS"), }) if err != nil { log.Fatal(err) } jsonOutput, err := json.MarshalIndent(output, "", " ") fmt.Println(string(jsonOutput)) }
  • API 세부 정보는 API 참조의 ListOpportunitiesAWS SDK for Go 를 참조하세요.

Java
SDK for Java 2.x

기회를 나열합니다.

package org.example; import java.util.ArrayList; import java.util.List; import org.example.utils.ReferenceCodesUtils; import static org.example.utils.Constants.*; import software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider; import software.amazon.awssdk.http.apache.ApacheHttpClient; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.partnercentralselling.PartnerCentralSellingClient; import software.amazon.awssdk.services.partnercentralselling.model.ListOpportunitiesRequest; import software.amazon.awssdk.services.partnercentralselling.model.ListOpportunitiesResponse; import software.amazon.awssdk.services.partnercentralselling.model.OpportunitySummary; /* * Purpose * PC-API-18 Getting list of Opportunities */ public class ListOpportunititesPaging { static PartnerCentralSellingClient client = PartnerCentralSellingClient.builder() .region(Region.US_EAST_1) .credentialsProvider(DefaultCredentialsProvider.create()) .httpClient(ApacheHttpClient.builder().build()) .build(); public static void main(String[] args) { List<OpportunitySummary> opportunitySummaries = getResponse(); ReferenceCodesUtils.formatOutput(opportunitySummaries); } private static List<OpportunitySummary> getResponse() { List<OpportunitySummary> opportunitySummaries = new ArrayList<OpportunitySummary>(); ListOpportunitiesRequest listOpportunityRequest = ListOpportunitiesRequest.builder() .catalog(CATALOG_TO_USE) .maxResults(5) .build(); ListOpportunitiesResponse response = client.listOpportunities(listOpportunityRequest); opportunitySummaries.addAll(response.opportunitySummaries()); while (response.nextToken() != null && response.nextToken().length() > 0) { listOpportunityRequest = ListOpportunitiesRequest.builder() .catalog(CATALOG_TO_USE) .maxResults(5) .nextToken(response.nextToken()) .build(); response = client.listOpportunities(listOpportunityRequest); opportunitySummaries.addAll(response.opportunitySummaries()); } client.close(); return opportunitySummaries; } }
  • API 세부 정보는 API 참조의 ListOpportunitiesAWS SDK for Java 2.x 를 참조하세요.

Python
SDK for Python(Boto3)

기회를 나열합니다.

#!/usr/bin/env python """ Purpose PC-API -18 Getting list of Opportunities """ import json import logging import boto3 import utils.helpers as helper from utils.constants import CATALOG_TO_USE serviceName = "partnercentral-selling" partner_central_client = boto3.client( service_name=serviceName, region_name='us-east-1' ) def get_list_of_opportunities(): opportunity_list = [] list_opportunities_request ={ "Catalog": CATALOG_TO_USE, "MaxResults": 20 } try: # Perform an API call response = partner_central_client.list_opportunities(**list_opportunities_request) opportunity_list.extend(response["OpportunitySummaries"]) while "NextToken" in response and response["NextToken"] is not None: list_opportunities_request["NextToken"] = response["NextToken"] response = partner_central_client.list_opportunities(**list_opportunities_request) opportunity_list.extend(response["OpportunitySummaries"]) return opportunity_list except Exception as err: # Catch all client exceptions print(json.dumps(err.response)) def usage_demo(): logging.basicConfig(level=logging.INFO, format="%(levelname)s: %(message)s") print("-" * 88) print("Getting list of Opportunities.") print("-" * 88) helper.pretty_print_datetime(get_list_of_opportunities()) if __name__ == "__main__": usage_demo()
  • API 세부 정보는 SDK for Python (Boto3) API 참조의 ListOpportunities를 참조하세요. AWS