Tek bir istemci için birden çok oturum oluşturma
Bu kılavuzda, event grid ad alanında tek bir istemci için birden çok oturum oluşturmayı öğreneceksiniz.
Ön koşullar
- Oluşturulmuş bir Event Grid ad alanınız var. Ad alanını, alt kaynakları oluşturmak ve bir konuda yayımlamak/abone olmak için bu Hızlı Başlangıç - Bir MQTT konusuna yayımlama ve abone olma konusuna bakın.
Çoklu Oturum desteği
İstemci başına birden çok oturum oluşturmak için, CONNECT paketinin Username özelliğinde istemci kimlik doğrulama adını sağlayın. Ardından oturum kimliğini CONNECT paketinin İstemci Tanımlayıcısı (ClientID) özelliğinde sağlayabilirsiniz.
- CONNECT paketinde Username özelliği sağlanmadıysa, istemci için birden çok oturum oluşturamazsınız.
- ClientID alanı boş olamaz.
- ClientID'nin bir ad alanında tüm istemciler arasında benzersiz olması gerekir
İstemci, oturum adını sunarak başka bir istemcinin etkin oturumunu devralmaya çalışırsa, bağlantı isteği yetkisiz bir hatayla reddedilir. Örneğin, B İstemcisi O sırada A istemcisine atanan 123. oturuma bağlanmaya çalışırsa, B istemcisinin bağlantı isteği reddedilir.
Bir istemcinin oturumu sonlandırılmadan bağlantısı kesilirse, oturumun süresi dolana kadar diğer istemciler oturum adını kullanamaz. Örneğin, A istemcisi oturum adı 123 olan bir oturum oluşturursa A istemcisinin bağlantısı kesilirse, B istemcisi özgün oturumun süresi dolana kadar 123. oturuma bağlanamaz.
CONNECT yapılandırması MQTT CONNECT paketinde, kullanıcı adı alanına istemcinin kimliğini gösteren İstemci kimlik doğrulaması adını ekleyin. "ipv4=127.0.0.1" istemci kimlik doğrulaması adına sahip istemci meta verileri örneği aşağıda verilmiştir.
Şimdi, istemciyi ad alanına bağlarken, MQTT CONNECT paketindeki istemci tanımlayıcı alanını oturum tanımlayıcısı olarak kullanabilirsiniz.
Örneğin, istemci yapılandırmasına bağlı olarak, aynı istemciden alan değerlerine sahip iki CONNECT paketi gönderebilirsiniz:
MQTTX uygulamasını kullanarak örnek bir bağlantı kurulumu görebilirsiniz.
İlk bağlantı paketi:
- kullanıcı adı: "ipv4=127.0.0.1"
- clientId: "sessionId1"
İkinci bağlantı paketi:
- kullanıcı adı: "ipv4=127.0.0.1"
- clientId: "sessionId2"
Her iki oturumun da kimliğini doğrulamak için aynı istemci sertifikası kimlik bilgilerini kullanabilirsiniz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin