

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Connect 连接到 Amazon IoT Core 服务端点
<a name="iot-connect-service"></a>

您可以通过使用首选语言的Amazon IoT Core Amazon SDK 或直接调用 REST API 来访问**控制平**面的功能。 Amazon CLI我们建议使用 Amazon CLI 或 S Amazon DK 进行交互， Amazon IoT Core 因为它们包含了调用 Amazon 服务的最佳实践。可以选择 APIs 直接调用 REST，但您必须提供[必要的安全凭证](https://docs.amazonaws.cn//general/latest/gr/signing_aws_api_requests.html)才能访问 API。

**注意**  
IoT 设备应该使用 [Amazon IoT 设备 SDKs](iot-connect-devices.md#iot-connect-device-sdks)。该设备 SDKs 经过优化，可在设备上使用，支持与设备的 MQTT 通信 Amazon IoT，并支持设备 Amazon IoT APIs 最常用的通信。有关设备 SDKs 及其提供的功能的更多信息，请参阅[Amazon IoT 设备 SDKs](iot-connect-devices.md#iot-connect-device-sdks)。  
移动设备应该使用 [Amazon 移动 SDKs](#iot-connect-mobile-sdks)。移动设备为 Amazon IoT APIs MQTT 设备通信以及移动设备上的其他 Amazon 服务 SDKs 提供支持。 APIs 有关手机 SDKs 及其提供的功能的更多信息，请参阅[Amazon 移动 SDKs](#iot-connect-mobile-sdks)。

您可以使用 Web 和移动应用程序中的 Amazon Amplify 工具和资源更轻松地连接 Amazon IoT Core。有关使用 Amplify 连接 Amazon IoT Core 的更多信息，请参阅 Amplify 文档[PubSub](https://docs.amplify.aws/react/build-a-backend/add-aws-services/pubsub/)中的。

以下各节描述了 SDKs 可用于开发和其他 Amazon 服务 Amazon IoT 并与之交互的工具。有关可用于构建和管理应用程序的 Amazon 工具和开发套件的完整列表 Amazon，请参阅[构建工具 Amazon](https://www.amazonaws.cn/tools/)。

## Amazon CLI 对于 Amazon IoT Core
<a name="iot-connect-cli"></a>

 Amazon CLI 提供了对的命令行访问权限。 Amazon APIs
+ 

**安装**  
有关如何安装的信息 Amazon CLI，请参阅[安装 Amazon CLI](https://docs.amazonaws.cn//cli/latest/userguide/cli-chap-install.html)。
+ 

**身份验证**  
 Amazon CLI 使用您的证书 Amazon Web Services 账户。
+ 

**参考**  
有关这些 Amazon IoT Core 服务的 Amazon CLI 命令的信息，请参阅：
  + [Amazon CLI 物联网命令参考](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/index.html)
  + [Amazon CLI 物联网数据的命令参考](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot-data/index.html)
  + [Amazon CLI 物联网作业数据的命令参考](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot-jobs-data/index.html)
  + [Amazon CLI 物联网安全隧道的命令参考](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iotsecuretunneling/index.html)

有关在 PowerShell 脚本环境中管理 Amazon 服务和资源的工具，请参阅[适用于的Amazon 工具 PowerShell](https://www.amazonaws.cn/powershell/)。

## Amazon SDKs
<a name="iot-service-sdks"></a>

使用 Amazon SDKs，您的应用程序和兼容设备可以呼叫 Amazon IoT APIs 其他 Amazon 服务。 APIs本节提供指向 Amazon SDKs 和 Amazon IoT Core 服务的 API 参考文档 APIs 的链接。

**Amazon SDKs 支持这些 Amazon IoT Core APIs**
+ [Amazon IoT](https://docs.amazonaws.cn//iot/latest/apireference/welcome.html)
+ [Amazon IoT 数据平面](https://docs.amazonaws.cn//iot/latest/apireference/welcome.html)
+ [Amazon IoT 乔布斯数据平面](https://docs.amazonaws.cn//iot/latest/apireference/welcome.html)
+ [Amazon IoT 安全隧道](https://docs.amazonaws.cn//iot/latest/apireference/welcome.html)
+ [Amazon IoT 无线](https://docs.amazonaws.cn/iot-wireless/latest/apireference/welcome.html)

------
#### [ C\$1\$1 ]

**要安装 [适用于 C\$1\$1 的 Amazon SDK](https://www.amazonaws.cn/sdk-for-cpp/) 并使用它连接到 Amazon IoT：**

1. 按照[入门使用适用于 C\$1\$1 的 Amazon SDK 中的说明进行](https://docs.amazonaws.cn/sdk-for-cpp/v1/developer-guide/getting-started.html)操作

   这些说明描述了如何：
   + 从源文件安装和构建 SDK
   + 提供凭证以通过您的 Amazon Web Services 账户使用 SDK
   + 在应用程序或服务中初始化和关闭 SDK
   + 创建 CMake 项目来构建您的应用程序或服务

1. 创建和运行示例应用程序。有关使用 Amazon SDK for C\$1\$1 的示例应用程序，请参阅 [适用于 C\$1\$1 的 Amazon SDK 代码示例](https://docs.amazonaws.cn/sdk-for-cpp/v1/developer-guide/programming-services.html)。

**所 适用于 C\$1\$1 的 Amazon SDK 支持的 Amazon IoT Core 服务的文档**
+ [Amazon:: IoTClient” 参考文档](https://sdk.amazonaws.com/cpp/api/LATEST/root/html/index.html)
+ [Aws:: Io Pl TData ane:: Io 参考文档 TData PlaneClient ](http://sdk.amazonaws.com/cpp/api/LATEST/class_aws_1_1_io_t_data_plane_1_1_io_t_data_plane_client.html)
+ [Aws:: Io TJobsDataPlane:: Io 参考文档 TJobs DataPlaneClient ](http://sdk.amazonaws.com/cpp/api/LATEST/class_aws_1_1_io_t_jobs_data_plane_1_1_io_t_jobs_data_plane_client.html)
+ [Aws:: Io TSecure 隧道:: Io 参考文档 TSecure TunnelingClient ](http://sdk.amazonaws.com/cpp/api/LATEST/class_aws_1_1_io_t_secure_tunneling_1_1_io_t_secure_tunneling_client.html)

------
#### [ Go ]

**要安装 [适用于 Go 的 Amazon SDK](https://www.amazonaws.cn/sdk-for-go/) 并使用它连接到 Amazon IoT：**

1. 按照《[入门》中的说明进行](https://docs.amazonaws.cn/sdk-for-go/v1/developer-guide/setting-up.html)操作 适用于 Go 的 Amazon SDK

   这些说明描述了如何：
   + 安装 适用于 Go 的 Amazon SDK
   + 获取 SDK 的访问密钥以访问您的 Amazon Web Services 账户
   + 将程序包导入到我们的应用程序或服务的源码中

1. 创建和运行示例应用程序。如需使用 适用于 Go 的 Amazon SDK的示例应用程序，请参阅 [适用于 Go 的 Amazon SDK 代码示例](https://docs.amazonaws.cn/sdk-for-go/v1/developer-guide/common-examples.html)。

**所 适用于 Go 的 Amazon SDK 支持的 Amazon IoT Core 服务的文档**
+ [IoT 参考文档](https://docs.amazonaws.cn/sdk-for-go/api/service/iot/)
+ [Io P TData lane 参考文档](https://docs.amazonaws.cn/sdk-for-go/api/service/iotdataplane/)
+ [Io TJobs DataPlane 参考文档](https://docs.amazonaws.cn/sdk-for-go/api/service/iotjobsdataplane/)
+ [Io TSecure 隧道连接参考文档](https://docs.amazonaws.cn/sdk-for-go/api/service/iotsecuretunneling/)

------
#### [ Java ]

**要安装 [适用于 Java 的 Amazon SDK](https://www.amazonaws.cn/sdk-for-java/) 并使用它连接到 Amazon IoT：**

1. 按照《[入门》中的说明进行](https://docs.amazonaws.cn/sdk-for-java/v2/developer-guide/getting-started.html)操作 Amazon SDK for Java 2.x

   这些说明描述了如何：
   + 注册 Amazon 并创建 IAM 用户
   + 下载 SDK 
   + 设置 Amazon 凭证和区域 
   + 将 SDK 与 Apache Maven 结合使用 
   + 将 SDK 与 Gradle 结合使用 

1. 使用 [Amazon SDK for Java 2.x 代码示例](https://docs.amazonaws.cn/sdk-for-java/v2/developer-guide/advanced-topics.html)之一创建和运行示例应用程序。

1. 查看 [SDK API 参考文档](https://sdk.amazonaws.com/java/api/latest/)

**适用于 Java 的 Amazon SDK 支持的 Amazon IoT Core 服务的文档**
+ [IotClient 参考文档](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/iot/IotClient.html)
+ [IotDataPlaneClient 参考文档](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/iotdataplane/IotDataPlaneClient.html)
+ [IotJobsDataPlaneClient 参考文档](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/iotjobsdataplane/IotJobsDataPlaneClient.html)
+ [Io TSecure TunnelingClient 参考文档](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/iotsecuretunneling/IoTSecureTunnelingClient.html)

------
#### [ JavaScript ]

**要安装 适用于 JavaScript 的 Amazon SDK 并使用它连接到 Amazon IoT：**

1. 按照 [适用于 JavaScript 的 Amazon SDK设置](https://docs.amazonaws.cn/sdk-for-javascript/v2/developer-guide/setting-up.html)中的说明操作。这些说明适用于在浏览器 适用于 JavaScript 的 Amazon SDK 中使用和与 Node.JS 搭配使用。确保按照适用于您的安装的说明进行操作。

   这些说明描述了如何：
   + 检查先决条件
   + 安装适用于 JavaScript
   + 加载适用的 SDK JavaScript

1. 如环境的入门选项所述，创建并运行示例应用程序以开始使用 SDK。
   + 开始使用[浏览器 JavaScript 中的 S Amazon DK](https://docs.amazonaws.cn/sdk-for-javascript/v2/developer-guide/getting-started-browser.html)，或者
   + 开始使用 [Node.js JavaScript 中的 S Amazon DK](https://docs.amazonaws.cn/sdk-for-javascript/v2/developer-guide/getting-started-nodejs.html)

**适用于 JavaScript 的 Amazon SDK 支持的 Amazon IoT Core 服务的文档**
+ [https://docs.amazonaws.cn/AWSJavaScriptSDK/latest/AWS/Iot.html](https://docs.amazonaws.cn/AWSJavaScriptSDK/latest/AWS/Iot.html)
+ [https://docs.amazonaws.cn/AWSJavaScriptSDK/latest/AWS/IotData.html](https://docs.amazonaws.cn/AWSJavaScriptSDK/latest/AWS/IotData.html)
+ [https://docs.amazonaws.cn/AWSJavaScriptSDK/latest/AWS/IoTJobsDataPlane.html](https://docs.amazonaws.cn/AWSJavaScriptSDK/latest/AWS/IoTJobsDataPlane.html)
+ [https://docs.amazonaws.cn/AWSJavaScriptSDK/latest/AWS/IoTSecureTunneling.html](https://docs.amazonaws.cn/AWSJavaScriptSDK/latest/AWS/IoTSecureTunneling.html)

------
#### [ .NET ]

**要安装 [适用于 .NET 的 Amazon SDK](https://www.amazonaws.cn/sdk-for-net/) 并使用它连接到 Amazon IoT：**

1. 按照[设置 适用于 .NET 的 Amazon SDK 环境中的说明进行](https://docs.amazonaws.cn/sdk-for-net/latest/developer-guide/net-dg-setup.html)操作

1. 按照[设置 适用于 .NET 的 Amazon SDK 项目中的说明进行](https://docs.amazonaws.cn/sdk-for-net/latest/developer-guide/net-dg-config.html)操作

   这些说明描述了如何：
   + 启动新项目
   + 获取和配置 Amazon 凭证
   + 安装 Amazon SDK 软件包

1. 在 For [.NET 的 Amazon SDK 中使用 Amazon 服务中创建并](https://docs.amazonaws.cn/sdk-for-net/latest/developer-guide/tutorials-examples.html)运行其中一个示例程序

1. 查看 [SDK API 参考文档](https://docs.amazonaws.cn/sdkfornet/v3/apidocs/index.html)

**适用于 .NET 的 Amazon SDK 支持的 Amazon IoT Core 服务的文档**
+ [Amazon.IoT.Model 参考文档](https://docs.amazonaws.cn/sdkfornet/v3/apidocs/items/IoT/NIoTModel.html)
+ [亚马逊。 IotData.Model 参考文档](https://docs.amazonaws.cn/sdkfornet/v3/apidocs/items/IotData/NIotDataModel.html)
+ [Amazon.Io TJobs DataPlane .Model 参考文档](https://docs.amazonaws.cn/sdkfornet/v3/apidocs/items/IoTJobsDataPlane/NIoTJobsDataPlaneModel.html)
+ [Amazon.Io TSecure Tunneling.Model 参考文档](https://docs.amazonaws.cn/sdkfornet/v3/apidocs/items/IoTSecureTunneling/NIoTSecureTunnelingModel.html)

------
#### [ PHP ]

**要安装 [适用于 PHP 的 Amazon SDK](https://www.amazonaws.cn/sdk-for-php/) 并使用它连接到 Amazon IoT：**

1. 按照[适用于 PHP 的 Amazon SDK 版本 3 入门中的说明进行](https://docs.amazonaws.cn/sdk-for-php/v3/developer-guide/getting-started_index.html)操作

   这些说明描述了如何：
   + 检查先决条件
   + 安装 SDK
   + 将 SDK 应用于 PHP 脚本

1. 使用 [适用于 PHP 的 Amazon SDK 版本 3 代码示例](https://docs.amazonaws.cn/sdk-for-php/v3/developer-guide/examples_index.html)之一创建和运行示例应用程序

**适用于 PHP 的 Amazon SDK 支持的 Amazon IoT Core 服务的文档**
+ [Io TClient 参考文档](https://docs.amazonaws.cn/aws-sdk-php/v3/api/class-Aws.Iot.IotClient.html)
+ [Io TData PlaneClient 参考文档](https://docs.amazonaws.cn/aws-sdk-php/v3/api/class-Aws.IotDataPlane.IotDataPlaneClient.html)
+ [Io TJobs DataPlaneClient 参考文档](https://docs.amazonaws.cn/aws-sdk-php/v3/api/class-Aws.IoTJobsDataPlane.IoTJobsDataPlaneClient.html)
+ [Io TSecure TunnelingClient 参考文档](https://docs.amazonaws.cn/aws-sdk-php/v3/api/class-Aws.IoTSecureTunneling.IoTSecureTunnelingClient.html)

------
#### [ Python ]

**要安装 [适用于 Python (Boto3) 的 Amazon SDK](https://www.amazonaws.cn/sdk-for-python/) 并使用它连接到 Amazon IoT：**

1. 按照 [适用于 Python (Boto3) 的 Amazon SDK 快速入门](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html)中的说明操作

   这些说明描述了如何：
   + 安装 SDK
   + 配置 SDK
   + 在您的代码中使用 SDK

1. 创建并运行使用 适用于 Python (Boto3) 的 Amazon SDK的示例程序

   此程序显示账户当前配置的日志记录选项。安装 SDK 并为您的账户配置该包后，您应该能够运行此程序。

   ```
   import boto3
   import json
   
   # initialize client
   iot = boto3.client('iot')
   
   # get current logging levels, format them as JSON, and write them to stdout
   response = iot.get_v2_logging_options()
   print(json.dumps(response, indent=4))
   ```

    有关此示例中使用的功能的更多信息，请参阅 [配置 Amazon IoT 日志](configure-logging.md)。

**适用于 Python (Boto3) 的 Amazon SDK 支持的 Amazon IoT Core 服务的文档**
+ [IoT 参考文档](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iot.html)
+ [Io P TData lane 参考文档](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iot-data.html)
+ [Io TJobs DataPlane 参考文档](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iot-jobs-data.html)
+ [Io TSecure 隧道连接参考文档](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotsecuretunneling.html)

------
#### [ Ruby ]

**要安装 [适用于 Ruby 的 Amazon SDK](https://www.amazonaws.cn/sdk-for-ruby/) 并使用它连接到 Amazon IoT：**
+ 按照《[入门》中的说明进行](https://docs.amazonaws.cn/sdk-for-ruby/v3/developer-guide/getting-started.html)操作 适用于 Ruby 的 Amazon SDK

  这些说明描述了如何：
  + 安装 SDK
  + 配置 SDK
+ 创建并运行 [Hello World 教程](https://docs.amazonaws.cn/sdk-for-ruby/v3/developer-guide/hello.html)

**适用于 Ruby 的 Amazon SDK 所支持的 Amazon IoT Core 服务的文档**
+ [Aws::IoT::Client 参考文档](https://docs.amazonaws.cn/sdk-for-ruby/v3/api/Aws/IoT/Client.html)
+ [Aws:: Io PlaneTData:: Client 参考文档](https://docs.amazonaws.cn/sdk-for-ruby/v3/api/Aws/IoTDataPlane/Client.html)
+ [Aws:: Io: TJobsDataPlane: Client 参考文档](https://docs.amazonaws.cn/sdk-for-ruby/v3/api/Aws/IoTJobsDataPlane/Client.html)
+ [Aws:: Io TSecure 隧道:: Client 参考文档](https://docs.amazonaws.cn/sdk-for-ruby/v3/api/Aws/IoTSecureTunneling/Client.html)

------

## Amazon 移动 SDKs
<a name="iot-connect-mobile-sdks"></a>

 Amazon 移动版 SDKs 为移动应用程序开发者提供特定于平台 APIs 的支持，包括 Amazon IoT Core 服务、使用 MQTT 的物联网设备通信以及其他服务。 APIs Amazon 

------
#### [ Android ]

**适用于 Android 的 Amazon Mobile SDK**

 适用于 Android 的 Amazon Mobile SDK 包含一个库、示例和文档，供开发人员用来构建互联的移动应用程序 Amazon。此 SDK 还支持 MQTT 设备通信和调用 Amazon IoT Core 服务。 APIs 有关更多信息，请参阅下列内容：
+ [Amazon 适用于 Android 的移动 SDK GitHub](https://github.com/aws/aws-sdk-android)
+ [Amazon 适用于 Android 的移动 SDK 自述文件](https://github.com/aws-amplify/aws-sdk-android/blob/main/README.md#aws-sdk-for-android)
+ [Amazon 适用于 Android 的移动 SDK 示例](https://github.com/awslabs/aws-sdk-android-samples#aws-sdk-for-android-samples)
+ [Amazon 适用于 Android 的 SDK API 参考](https://aws-amplify.github.io/aws-sdk-android/docs/reference/)
+ [AWSIoTClient 类参考文档](https://aws-amplify.github.io/aws-sdk-android/docs/reference/com/amazonaws/services/iot/AWSIotClient.html)

------
#### [ iOS ]

**Amazon Mobile SDK for iOS**

 Amazon Mobile SDK for iOS 是一个开源软件开发套件，在 Apache 开源许可证下分发。iOS 版 SDK 提供了一个库、代码示例和文档，以帮助开发者使用构建互联的移动应用程序 Amazon。此 SDK 还支持 MQTT 设备通信和调用 Amazon IoT Core 服务。 APIs 有关更多信息，请参阅下列内容：
+ [Amazon Mobile SDK for iOS on GitHub](https://github.com/aws/aws-sdk-ios)
+ [Amazon 适用于 iOS 的 SDK 自述文件](https://github.com/aws-amplify/aws-sdk-ios/blob/main/README.md#aws-sdk-for-ios)
+ [Amazon 适用于 iOS 的 SDK 示例](https://github.com/awslabs/aws-sdk-ios-samples#the-aws-sdk-for-ios-samples)
+ [Amazon IoT iOS 版 Amazon SDK 中的类参考文档](https://aws-amplify.github.io/aws-sdk-ios/docs/reference/AWSIoT/index.html)

------

## APIs 其余 Amazon IoT Core 服务
<a name="iot-connect-rest"></a>

其余 APIs 的 Amazon IoT Core 服务可以使用 HTTP 请求直接调用。
+ 

**端点 URL**  
公开 REST APIs Amazon IoT Core 服务的服务终端节点因地区而异，并在[Amazon IoT Core 终端节点和配额](https://docs.amazonaws.cn//general/latest/gr/iot-core.html)中列出。您必须使用具有您要访问的 Amazon IoT 资源的区域的终端节点，因为 Amazon IoT 资源是特定于区域的。
+ 

**身份验证**  
其余 APIs Amazon IoT Core 服务使用 Amazon IAM 凭证进行身份验证。有关更多信息，请参阅[《 Amazon 通用参考》中的 “签署 Amazon API 请求](https://docs.amazonaws.cn//general/latest/gr/signing_aws_api_requests.html)”。
+ 

**API 参考**  
有关其余 APIs Amazon IoT Core 服务提供的特定功能的信息，请参阅：
  + [IoT 的 API 参考](https://docs.amazonaws.cn//iot/latest/apireference/API_Operations_AWS_IoT.html)。
  + [IoT 数据的 API 参考](https://docs.amazonaws.cn//iot/latest/apireference/API_Operations_AWS_IoT_Data_Plane.html)。
  + [IoT 任务数据的 API 参考](https://docs.amazonaws.cn//iot/latest/apireference/API_Operations_AWS_IoT_Jobs_Data_Plane.html)。
  + [IoT 安全隧道的 API 参考](https://docs.amazonaws.cn//iot/latest/apireference/API_Operations_AWS_IoT_Secure_Tunneling.html)。