项目作者: lucacasonato

项目描述 :
Amazon SQS for Deno
高级语言: TypeScript
项目地址: git://github.com/lucacasonato/deno_sqs.git
创建时间: 2020-07-16T21:51:41Z
项目社区:https://github.com/lucacasonato/deno_sqs

开源协议:MIT License

下载


deno_sqs

sqs@0.3.7/mod.ts">deno doc

Amazon SQS for Deno

⚠️ This project is work in progress. Expect breaking changes.

Examples

  1. import { SQSQueue } from "https://deno.land/x/sqs@0.3.7/mod.ts";
  2. // Create a queue using the queue url and credentials
  3. const queue = new SQSQueue({
  4. queueURL: "https://sqs.us-east-2.amazonaws.com/123456789012/MyQueue/",
  5. accessKeyID: Deno.env.get("AWS_ACCESS_KEY_ID")!,
  6. secretKey: Deno.env.get("AWS_SECRET_ACCESS_KEY")!,
  7. region: "us-east-2",
  8. });
  9. // Send a message to this queue and print the message ID.
  10. const res = await queue.sendMesssage({ body: "Hello World!" });
  11. console.log("Sent message with id ", res.messageID);
  12. // Receive a message from the queue:
  13. const { messages } = await queue.receiveMessage();
  14. for (const message of messages) {
  15. console.log("Recieved message ", message.messageID, "and body", message.body);
  16. // Delete the message after receiving it
  17. await queue.deleteMessage(message.receiptHandle);
  18. }

Contributing

To run tests you need to have a S3 bucket you can talk to. For local development
you can use min.io to emulate an S3 bucket:

  1. export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE
  2. export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
  3. docker-compose up -d
  4. aws --endpoint-url "http://localhost:9324" sqs create-queue --queue-name test --region us-east-1 --attributes VisibilityTimeout=0
  5. deno test --allow-net --allow-env