hızlı başlangıç: JavaScript için Azure kuyruğu Depolama istemci kitaplığı v12
JavaScript için istemci kitaplığı v12 Depolama Azure kuyruğu ile çalışmaya başlayın. Azure kuyruğu Depolama, daha sonra almak ve işlemek üzere çok sayıda ileti depolamaya yönelik bir hizmettir. Paketi yüklemek ve temel görevler için örnek kodu denemek üzere bu adımları izleyin.
JavaScript için v12 istemci kitaplığı Depolama Azure kuyruğunu kullanın:
- Bir kuyruk oluşturma
- Bir kuyruğa ileti ekleme
- Kuyruktaki iletilere göz atın
- Kuyruktaki bir iletiyi güncelleştirme
- Kuyruktan ileti alma
- Kuyruktaki iletileri silme
- Bir kuyruk silme
Ek kaynaklar:
Önkoşullar
- Azure aboneliği- ücretsiz olarak bir tane oluşturun
- Azure Depolama hesabı- depolama hesabı oluşturma
- İşletim sisteminiz için geçerli Node.js .
Ayarlanıyor
bu bölümde, bir projeyi JavaScript için istemci kitaplığı v12 Depolama Azure kuyruğu ile çalışacak şekilde hazırlama işlemi adım adım açıklanmaktadır.
Proje oluşturma
Adlı bir Node.js uygulaması oluşturun queues-quickstart-v12
Konsol penceresinde (cmd, PowerShell veya Bash gibi), proje için yeni bir dizin oluşturun.
mkdir queues-quickstart-v12Yeni oluşturulan dizine geçiş yapın
queues-quickstart-v12.cd queues-quickstart-v12Adlı yeni bir metin dosyası oluşturun
package.json. Bu dosya Node.js projesi tanımlar. Bu dosyayıqueues-quickstart-v12dizine kaydedin. Dosyanın içeriği aşağıdadır:{ "name": "queues-quickstart-v12", "version": "1.0.0", "description": "Use the @azure/storage-queue SDK version 12 to interact with Azure Queue storage", "main": "queues-quickstart-v12.js", "scripts": { "start": "node queues-quickstart-v12.js" }, "author": "Your Name", "license": "MIT", "dependencies": { "@azure/storage-queue": "^12.0.0", "@types/dotenv": "^4.0.3", "dotenv": "^6.0.0" } }İsterseniz alanı için kendi adınızı koyabilirsiniz
author.
Paketi yükler
yine de queues-quickstart-v12 dizinde, komutunu kullanarak JavaScript için Azure kuyruğu Depolama istemci kitaplığı ' nı yükleyebilirsiniz npm install .
npm install
bu komut, package.json dosyayı okur ve JavaScript paketi için Depolama istemci kitaplığı v12 ve bağımlı olduğu tüm kitaplıkları yükleyecek Azure kuyruğunu.
Uygulama çerçevesini ayarlama
Proje dizininden:
Kod Düzenleyicinizde başka bir yeni metin dosyası açın
requireAzure ve Node.js modüllerini yüklemek için çağrılar eklemeÇok temel özel durum işleme dahil olmak üzere programın yapısını oluşturma
Kod şu şekildedir:
const { QueueClient } = require("@azure/storage-queue"); const uuidv1 = require("uuid/v1"); async function main() { console.log("Azure Queue Storage client library v12 - JavaScript quickstart sample"); // Quick start code goes here } main().then(() => console.log("\nDone")).catch((ex) => console.log(ex.message));Yeni dosyayı
queues-quickstart-v12.jsqueues-quickstart-v12dizine kaydedin.
Azure portalından kimlik bilgilerinizi kopyalama
örnek uygulama Azure Depolama istek yaptığında yetkilendirilmiş olması gerekir. Bir isteği yetkilendirmek için, depolama hesabı kimlik bilgilerinizi uygulamaya bağlantı dizesi olarak ekleyin. Depolama hesabı kimlik bilgilerinizi görüntülemek için aşağıdaki adımları izleyin:
Azure Portal’ında oturum açın.
Depolama hesabınızı bulun.
Depolama hesabı menü bölmesinde, güvenlik + ağ altında, erişim anahtarları' nı seçin. Burada, her anahtar için hesap erişim anahtarlarını ve tüm bağlantı dizesini görüntüleyebilirsiniz.

Erişim tuşları bölmesinde, anahtarları göster' i seçin.
KEY1 bölümünde bağlantı dizesi değerini bulun. Bağlantı dizesini kopyalamak için Panoya Kopyala simgesini seçin. Bir sonraki bölümde bağlantı dizesi değerini bir ortam değişkenine eklersiniz.

Depolama bağlantı dizelerinizi yapılandırma
Bağlantı dizesini kopyaladıktan sonra, uygulamayı çalıştıran yerel makinede yeni bir ortam değişkenine yazın. Ortam değişkenini ayarlamak için bir konsol penceresi açın ve işletim sisteminizin yönergelerini izleyin. <yourconnectionstring>Gerçek bağlantı dizeniz ile değiştirin.
Windows
setx AZURE_STORAGE_CONNECTION_STRING "<yourconnectionstring>"
ortam değişkenini Windows ekledikten sonra, komut penceresinin yeni bir örneğini başlatmanız gerekir.
Linux
export AZURE_STORAGE_CONNECTION_STRING="<yourconnectionstring>"
macOS
export AZURE_STORAGE_CONNECTION_STRING="<yourconnectionstring>"
Programları yeniden Başlat
Ortam değişkenini ekledikten sonra, ortam değişkenini okumak için gereken tüm çalışan programları yeniden başlatın. Örneğin, devam etmeden önce geliştirme ortamınızı veya düzenleyiciyi yeniden başlatın.
Nesne modeli
Azure Kuyruk Depolama, çok sayıda iletiyi depolamaya yönelik bir hizmettir. Kuyruk iletisi boyutu 64 KB 'ye kadar olabilir. Bir kuyruk, depolama hesabının toplam kapasite sınırına kadar milyonlarca ileti içerebilir. Kuyruklar genellikle zaman uyumsuz olarak işlenecek iş biriktirme listesi oluşturmak için kullanılır. Queue Depolama üç tür kaynak sunar:
- Depolama hesabı
- Depolama hesabındaki bir kuyruk
- Kuyruktaki iletiler
Aşağıdaki diyagramda bu kaynaklar arasındaki ilişki gösterilmektedir.

Şu kaynaklarla etkileşim kurmak için aşağıdaki JavaScript sınıflarını kullanın:
QueueServiceClient:,QueueServiceClientDepolama hesabınızdaki tüm kuyrukları yönetmenizi sağlar.QueueClient:QueueClientSınıfı tek bir kuyruğu ve iletilerini yönetmenizi ve düzenlemenizi sağlar.QueueMessage:QueueMessageSınıfı, bir sıraya çağrılırken döndürülen ayrı nesneleri temsil ederReceiveMessages.
Kod örnekleri
bu örnek kod parçacıkları, JavaScript için Azure kuyruğu Depolama istemci kitaplığı ile aşağıdaki eylemleri nasıl yapılacağını gösterir:
- Bağlantı dizesini alma
- Bir kuyruk oluşturma
- Bir kuyruğa ileti ekleme
- Kuyruktaki iletilere göz atın
- Kuyruktaki bir iletiyi güncelleştirme
- Kuyruktan ileti alma
- Kuyruktaki iletileri silme
- Bir kuyruk silme
Bağlantı dizesini alma
Aşağıdaki kod, depolama bağlantı dizesini yapılandırma bölümünde oluşturulan ortam değişkeninden depolama hesabı için bağlantı dizesini alır.
Bu kodu işlevin içine ekleyin main :
// Retrieve the connection string for use with the application. The storage
// connection string is stored in an environment variable on the machine
// running the application called AZURE_STORAGE_CONNECTION_STRING. If the
// environment variable is created after the application is launched in a
// console or with Visual Studio, the shell or application needs to be
// closed and reloaded to take the environment variable into account.
const AZURE_STORAGE_CONNECTION_STRING = process.env.AZURE_STORAGE_CONNECTION_STRING;
Bir kuyruk oluşturma
Yeni sıra için bir ad belirleyin. Aşağıdaki kod, benzersiz olduğundan emin olmak için kuyruk adına bir UUID değeri ekler.
Önemli
Kuyruk adları yalnızca küçük harf, sayı ve kısa çizgi içerebilir ve bir harf veya sayı ile başlamalıdır. Her kısa çizginin önünde ve arkasında kısa çizgi dışında bir karakter bulunmalıdır. Ad ayrıca 3 ila 63 karakter uzunluğunda olmalıdır. Daha fazla bilgi için bkz. ad kuyrukları ve meta verileri.
Sınıfının bir örneğini oluşturun QueueClient . Ardından, create depolama hesabınızda kuyruğu oluşturmak için yöntemini çağırın.
Bu kodu işlevin sonuna ekleyin main :
// Create a unique name for the queue
const queueName = "quickstart" + uuidv1();
console.log("\nCreating queue...");
console.log("\t", queueName);
// Instantiate a QueueClient which will be used to create and manipulate a queue
const queueClient = new QueueClient(AZURE_STORAGE_CONNECTION_STRING, queueName);
// Create the queue
const createQueueResponse = await queueClient.create();
console.log("Queue created, requestId:", createQueueResponse.requestId);
Bir kuyruğa ileti ekleme
Aşağıdaki kod parçacığı, yöntemini çağırarak kuyruğa ileti ekler sendMessage . Ayrıca, QueueMessage üçüncü çağrıdan döndürülen öğesini de kaydeder sendMessage . Döndürülen sendMessageResponse ileti içeriğini programda daha sonra güncelleştirmek için kullanılır.
Bu kodu işlevin sonuna ekleyin main :
console.log("\nAdding messages to the queue...");
// Send several messages to the queue
await queueClient.sendMessage("First message");
await queueClient.sendMessage("Second message");
const sendMessageResponse = await queueClient.sendMessage("Third message");
console.log("Messages added, requestId:", sendMessageResponse.requestId);
Kuyruktaki iletilere göz atın
Yöntemi çağırarak kuyruktaki iletilere göz atın peekMessages . Bu yöntem, sıranın önüne bir veya daha fazla ileti alır ancak iletinin görünürlüğünü değiştirmez.
Bu kodu işlevin sonuna ekleyin main :
console.log("\nPeek at the messages in the queue...");
// Peek at messages in the queue
const peekedMessages = await queueClient.peekMessages({ numberOfMessages : 5 });
for (i = 0; i < peekedMessages.peekedMessageItems.length; i++) {
// Display the peeked message
console.log("\t", peekedMessages.peekedMessageItems[i].messageText);
}
Kuyruktaki bir iletiyi güncelleştirme
Yöntemini çağırarak bir iletinin içeriğini güncelleştirin updateMessage . Bu yöntem, bir iletinin görünürlük zaman aşımını ve içeriğini değiştirebilir. İleti içeriği, boyutu 64 KB 'a kadar olan bir UTF-8 kodlu dize olmalıdır. Yeni içerikle birlikte, messageId popReceipt kodda daha önce kaydedilen yanıtı ve yanıtı geçirin. sendMessageResponseÖzellikler güncelleştirilecek iletiyi belirler.
console.log("\nUpdating the third message in the queue...");
// Update a message using the response saved when calling sendMessage earlier
updateMessageResponse = await queueClient.updateMessage(
sendMessageResponse.messageId,
sendMessageResponse.popReceipt,
"Third message has been updated"
);
console.log("Message updated, requestId:", updateMessageResponse.requestId);
Kuyruktan ileti alma
Yöntemini çağırarak önceden eklenmiş iletileri indirin receiveMessages . numberOfMessagesAlanında bu çağrı için alacak en fazla ileti sayısını geçirin.
Bu kodu işlevin sonuna ekleyin main :
console.log("\nReceiving messages from the queue...");
// Get messages from the queue
const receivedMessagesResponse = await queueClient.receiveMessages({ numberOfMessages : 5 });
console.log("Messages received, requestId:", receivedMessagesResponse.requestId);
Kuyruktaki iletileri silme
İletileri alındıktan ve işlendikten sonra kuyruktan silin. Bu durumda, işleme yalnızca konsolda iletiyi görüntülüyor.
Yöntemini çağırarak iletileri silin deleteMessage . Açıkça silinmeyen tüm iletiler, daha sonra bu işlemleri işlemek için bir süre sonra sırada görünür hale gelir.
Bu kodu işlevin sonuna ekleyin main :
// 'Process' and delete messages from the queue
for (i = 0; i < receivedMessagesResponse.receivedMessageItems.length; i++) {
receivedMessage = receivedMessagesResponse.receivedMessageItems[i];
// 'Process' the message
console.log("\tProcessing:", receivedMessage.messageText);
// Delete the message
const deleteMessageResponse = await queueClient.deleteMessage(
receivedMessage.messageId,
receivedMessage.popReceipt
);
console.log("\tMessage deleted, requestId:", deleteMessageResponse.requestId);
}
Bir kuyruk silme
Aşağıdaki kod, yöntemi kullanılarak sıranın silindiği, uygulamanın oluşturduğu kaynakları temizler delete .
Bu kodu işlevin sonuna ekleyin main ve dosyayı kaydedin:
// Delete the queue
console.log("\nDeleting queue...");
const deleteQueueResponse = await queueClient.delete();
console.log("Queue deleted, requestId:", deleteQueueResponse.requestId);
Kodu çalıştırma
Bu uygulama, bir Azure kuyruğuna üç ileti oluşturur ve ekler. Kod kuyruktaki iletileri listeler, ardından kuyruğu silmeden önce bunları alır ve siler.
Konsol pencerenizde, dosyayı içeren dizine gidin queues-quickstart-v12.js ve node uygulamayı çalıştırmak için aşağıdaki komutu kullanın.
node queues-quickstart-v12.js
Uygulamanın çıktısı aşağıdaki örneğe benzer:
Azure Queue Storage client library v12 - JavaScript quickstart sample
Creating queue...
quickstartc095d120-1d04-11ea-af30-090ee231305f
Queue created, requestId: 5c0bc94c-6003-011b-7c11-b13d06000000
Adding messages to the queue...
Messages added, requestId: a0390321-8003-001e-0311-b18f2c000000
Peek at the messages in the queue...
First message
Second message
Third message
Updating the third message in the queue...
Message updated, requestId: cb172c9a-5003-001c-2911-b18dd6000000
Receiving messages from the queue...
Messages received, requestId: a039036f-8003-001e-4811-b18f2c000000
Processing: First message
Message deleted, requestId: 4a65b82b-d003-00a7-5411-b16c22000000
Processing: Second message
Message deleted, requestId: 4f0b2958-c003-0030-2a11-b10feb000000
Processing: Third message has been updated
Message deleted, requestId: 6c978fcb-5003-00b6-2711-b15b39000000
Deleting queue...
Queue deleted, requestId: 5c0bca05-6003-011b-1e11-b13d06000000
Done
Hata Ayıklayıcıdaki kodda adım adım ilerleyin ve işlem boyunca Azure Portal denetleyin. Kuyruktaki iletilerin oluşturulup silindiğini doğrulamak için depolama hesabınızı kontrol edin.
Sonraki adımlar
Bu hızlı başlangıçta, bir sıranın nasıl oluşturulacağını ve JavaScript kodunu kullanarak iletiye nasıl ileti ekleneceğini öğrendiniz. Ardından iletileri göz atmayı, almayı ve silmeyi öğrendiniz. Son olarak, bir ileti sırasının nasıl silineceğini öğrendiniz.
Öğreticiler, örnekler, hızlı ve diğer belgeler için şu adresi ziyaret edin:
- daha fazla bilgi edinmek için bkz. JavaScript için Azure kuyruğu Depolama istemci kitaplığı.
- daha fazla azure kuyruğu Depolama örnek uygulamalar için bkz. JavaScript için Depolama istemci kitaplığı v12 azure kuyruğu.