简介
AWS SDK Javascript库提供了各种用于 JavaScript 应用程序的服务。 这些服务包括 Amazon S3,Amazon EC2,Amazon DynamoDB,和 Amazon SWF等。@aws-sdk/util-create-request
就是 AWS SDK Javascript库中的一个 npm包,它主要用于创建 HTTP 请求。HTTP 请求是用于向服务发出请求的基本方法。所以,本文将为大家讲解 @aws-sdk/util-create-request
的使用教程。
安装
在使用之前需要先安装 @aws-sdk/util-create-request
。
npm install @aws-sdk/util-create-request
如果你使用 TypeScript,你可能需要把下面一行添加到 tsconfig.json
以避免 TypeScript 编译错误。
{ "compilerOptions": { "lib": ["es2015"] } }
使用步骤
@aws-sdk/util-create-request
提供了一个非常简单且易于使用的 API 来创建 HTTP请求。以下是使用 @aws-sdk/util-create-request
的基本步骤:
步骤1: 准备参数
在使用 @aws-sdk/util-create-request
创建 HTTP 请求之前,需要提供以下参数:
Endpoint
:用于请求的服务端点 URL。HttpRequest
:包含了用于创建 HTTP请求的选项, 例如HTTP Headers, Query Strings or Body。Handler
:一个处理程序对象,它知道如何发送HTTP请求。AWS SDK 包括一些可以处理请求的默认HTTP处理程序,但是您可以指定自己的HTTP处理程序。
-- -------------------- ---- ------- ------ - ----------- - ---- ------------------------- ------ - ------------------ - ---- ----------------- ------ - ----------- - ---- ------------------------- ------ - --------------- - ---- ----------------------------- ----- -------- - --------------------------- ----- ------------ ------ - ---------------- ------- ------- ----------- ------- -------- ---- --- ----- ------------ ----------- - - ------- ------- --------- --------- -------- - --------------- ------------------- ----------------- ------------------------------------------ -- --------- ------------------- ----- ----------------------- ----- ------------ -- ----- ----------- - --- ------------------ ----- --------------- ------------------ - - --------- ------------------- --------- --------- -- ----- ------- - --- ------------------------ ----------------展开代码
步骤2: 创建 Request!
现在我们可以使用 @aws-sdk/util-create-request
来创建 HTTP 请求了。我们可以引入 @aws-sdk/util-create-request
并使用 createRequest
方法。
import { createRequest } from '@aws-sdk/util-create-request'; const request = createRequest(endpoint, httpRequest, handler);
步骤3: 发送请求并处理结果
最后,我们只需使用创建的 request
对象向我们的服务发出 HTTP 请求。AWS SDK 将自动处理HTTP响应,并将结果返回给您的应用程序。
request.send().then((response) => { console.log(response); }).catch((err) => { console.log(err); });
在调用 send()
时,它将返回一个 Promise<Response>
对象,该对象具有下列属性:
headers
:一个包含 HTTP 在返回中的实际响应标头的对象。statusCode
:一个表示响应状态的数字。statusMessage
:表示响应状态的文本消息。body
:响应体数据,根据 success 特定设置的 SDK.DOCUMENT 和 SDK.BUFFER 的值,分别返回解析后的 JSON 数据或未处理的二进制数据。
示例
下面是一个完整的示例,演示了如何使用 @aws-sdk/util-create-request
进行 HTTPS POST 请求。在此示例中,我们将使用 AWS S3服务。
-- -------------------- ---- ------- ------ - ------------- - ---- ------------------------------- ------ - ----------- - ---- ------------------------- ------ - ------------------ - ---- ----------------- ------ - ----------- - ---- ------------------------- ------ - --------------- - ---- ----------------------------- ----- -------- - --------------------------- ----- ------------ ------ - ---------------- ------- ------- ----------- ------- -------- ---- --- ----- ------------ ----------- - - ------- ------- --------- --------- -------- - --------------- ------------------- ----------------- ------------------------------------------ -- --------- ------------------- ----- ----------------------- ----- ------------ -- ----- ----------- - --- ------------------ ----- --------------- ------------------ - - --------- ------------------- --------- --------- -- ----- ------- - --- ------------------------ ---------------- ----- ------- - ----------------------- ------------ --------- ------------------------------ -- - ---------------------- -------------- -- - ----------------- ---展开代码
总结
@aws-sdk/util-create-request
是一个用于创建 HTTP 请求的npm包。它提供了一个非常简单易于使用的API来创建 HTTP请求。在使用 @aws-sdk/util-create-request
前,需要准备一些参数,这些参数包括 Endpoint
, HttpRequest
和 Handler
。通过 createRequest
方法来创建 HTTP 请求对象,然后通过 send
方法发送,并处理响应结果。我希望这个教程可以帮助你更加了解 @aws-sdk/util-create-request
。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f6ee49da9b7065299ccba0e