為什麼我的 Amazon Cognito 使用者集區分析沒有顯示在我的 Amazon Pinpoint 儀表板上?

上次更新日期:2022 年 4 月 19 日

我的 Amazon Cognito 使用者集區分析未發佈到我的 Amazon Pinpoint 專案儀表板。為什麼在 Amazon Cognito 主控台中指定了 Amazon Pinpoint 分析設定後,我的使用者集區分析未出現在 Amazon Pinpoint 中?

簡短描述

驗證您的應用程式正在將其請求中的 AnalyticsMetadata 參數傳遞給 InitiateAuth API 操作。如果沒有此參數,Amazon Cognito 就無法將使用者集區分析從您的應用程式傳遞給 Amazon Pinpoint。

要讓您的應用程式將其請求中的 AnalyticsMetadata 參數傳遞給 InitiateAuth API 操作,可以使用以下任一方法:

  • AWS Command Line Interface (AWS CLI)
  • AWS 開發套件

解決方案

重要提示:AnalyticsMetadata 參數值對於每個端點必須是唯一的。每個唯一值都對應於 Amazon Pinpoint 儀表板中的單個資料點。

AWS CLI

注意:如果您在執行 AWS CLI 命令時收到錯誤,請確保您使用的是最新版 AWS CLI

執行以下 initiate-auth AWS CLI 命令:

$ aws cognito-idp initiate-auth --auth-flow USER_PASSWORD_AUTH --auth-parameters USERNAME=STRING_VALUE,PASSWORD=STRING_VALUE --client-id STRING_VALUE --analytics-metadata AnalyticsEndpointId=STRING_VALUE

AWS 開發套件

有關每種語言特定 AWS 開發套件的説明,請參閱 Amazon Cognito API 參考中 InitiateAuth 頁面的另請參閲部分。

AWS SDK for JavaScript 程式碼範例

var cognitoidentityserviceprovider = new AWS.CognitoIdentityServiceProvider();
var params = {
  AuthFlow: "USER_PASSWORD_AUTH",
  ClientId: 'STRING_VALUE', /* the client ID attached to the Pinpoint project */
  AuthParameters: {
    'USERNAME': 'STRING_VALUE',
    'PASSWORD': 'STRING_VALUE'
  },
  AnalyticsMetadata: {
    AnalyticsEndpointId: 'STRING_VALUE' /* random UUID unique for each Cognito user */
  },
};
cognitoidentityserviceprovider.initiateAuth(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

此文章是否有幫助?


請求に関するサポートまたは技術サポートが必要ですか?