Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bir şey yapmak üzere Azure Web PubSub hizmetini çağırmak için Web PubSub çıkış bağlamasını kullanın. Şu kişilere ileti gönderebilirsiniz:
- Tüm bağlı istemciler
- Belirli bir kullanıcı için kimliği doğrulanmış bağlı istemciler
- Belirli bir gruba katılmış bağlı istemciler
- Belirli bir istemci bağlantısı
Çıkış bağlaması ayrıca istemcileri ve grupları yönetmenize ve grupla belirli connectionId'yi hedefleyen izinler vermenizi/iptal etmenizi sağlar.
- Gruba bağlantı ekleme
- Gruba kullanıcı ekleme
- Gruptan bağlantıyı kaldırma
- Kullanıcıyı gruptan kaldırma
- Kullanıcıyı tüm gruplardan kaldırma
- Tüm istemci bağlantılarını kapatma
- Belirli bir istemci bağlantısını kapatma
- Gruptaki bağlantıları kapatma
- Bağlantı izni verme
- Bağlantı iznini iptal etme
Kurulum ve yapılandırma ayrıntıları hakkında bilgi için genel bakışa bakın.
Örnek
[Function("WebPubSubOutputBinding")]
[WebPubSubOutput(Hub = "<hub>", Connection = "<web_pubsub_connection_name>")]
public static WebPubSubAction Run([HttpTrigger(AuthorizationLevel.Function, "get", "post")] HttpRequestData req)
{
return new SendToAllAction
{
Data = BinaryData.FromString("Hello Web PubSub!"),
DataType = WebPubSubDataType.Text
};
}
const { app, output } = require('@azure/functions');
const wpsMsg = output.generic({
type: 'webPubSub',
name: 'actions',
hub: '<hub>',
});
app.http('message', {
methods: ['GET', 'POST'],
authLevel: 'anonymous',
extraOutputs: [wpsMsg],
handler: async (request, context) => {
context.extraOutputs.set(wpsMsg, [{
"actionName": "sendToAll",
"data": `Hello world`,
"dataType": `text`
}]);
}
});
Not
Bu dil için tam örnekler beklemede
Not
Java için Web PubSub uzantıları henüz desteklenmiyor.
WebPubSubAction
WebPubSubAction çıkış bağlamalarının temel soyut türüdür. Türetilmiş türler, hizmetin çağırmasını istediğiniz eylem sunucusunu temsil eder.
C# dilinde, kullanılabilir eylemleri keşfetmeye yardımcı olmak için altında WebPubSubAction birkaç statik yöntem sağlarız. Örneğin, kullanıcı çağrısıyla SendToAllActionWebPubSubAction.CreateSendToAllAction()oluşturabilir.
| Türetilmiş Sınıf | Özellikler |
|---|---|
SendToAllAction |
Veri, Veri Türü, Hariç Tutuldu |
SendToGroupAction |
Grup, Veri, VeriTürü, Hariç Tutulan |
SendToUserAction |
Kullanıcı Kimliği, Veri, Veri Türü |
SendToConnectionAction |
BağlantıKimliği, Veri, VeriTürü |
AddUserToGroupAction |
Kullanıcı Kimliği, Grup |
RemoveUserFromGroupAction |
Kullanıcı Kimliği, Grup |
RemoveUserFromAllGroupsAction |
Kullanıcı Kimliği |
AddConnectionToGroupAction |
Bağlantı Kimliği, Grup |
RemoveConnectionFromGroupAction |
Bağlantı Kimliği, Grup |
CloseAllConnectionsAction |
Dışlandı, Neden |
CloseClientConnectionAction |
ConnectionId, Neden |
CloseGroupConnectionsAction |
Grup, Dışlanan, Neden |
GrantPermissionAction |
BağlantıId, İzin, HedefAdı |
RevokePermissionAction |
BağlantıId, İzin, HedefAdı |
actionName , türü çözümlemek için anahtar parametredir. Kullanılabilir eylemler aşağıdaki gibi listelenir.
| EylemAdı | Özellikler |
|---|---|
sendToAll |
Veri, Veri Türü, Hariç Tutuldu |
sendToGroup |
Grup, Veri, VeriTürü, Hariç Tutulan |
sendToUser |
Kullanıcı Kimliği, Veri, Veri Türü |
sendToConnection |
BağlantıKimliği, Veri, VeriTürü |
addUserToGroup |
Kullanıcı Kimliği, Grup |
removeUserFromGroup |
Kullanıcı Kimliği, Grup |
removeUserFromAllGroups |
Kullanıcı Kimliği |
addConnectionToGroup |
Bağlantı Kimliği, Grup |
removeConnectionFromGroup |
Bağlantı Kimliği, Grup |
closeAllConnections |
Dışlandı, Neden |
closeClientConnection |
ConnectionId, Neden |
closeGroupConnections |
Grup, Dışlanan, Neden |
grantPermission |
BağlantıId, İzin, HedefAdı |
revokePermission |
BağlantıId, İzin, HedefAdı |
Önemli
Veri türü olarak ayarlandıysa string veya json veri dönüştürme belirsizliğini önlemek için gönderilen iletiyle ilgili eylemlerdeki ileti veri özelliği olmalıdırtext. Lütfen ihtiyacı olan json nesnesini dönüştürmek için kullanın JSON.stringify() . Bu, ileti özelliği kullanılarak herhangi bir yere uygulanır, örneğin ile UserEventResponse.DataWebPubSubTriggerçalışma.
Veri türü olarak binaryayarlandığında, içinde yapılandırıldığı gibi doğal olarak dataType desteklenen binary bağlamadan yararlanmasına function.jsonizin verilir. Ayrıntılar için bkz. Tetikleyici ve bağlama tanımları.
Yapılandırma
Aşağıdaki tabloda, function.json dosyasında ve WebPubSub özniteliğinde ayarladığınız bağlama yapılandırma özellikleri açıklanmaktadır.
| function.json özelliği | Öznitelik özelliği | Açıklama |
|---|---|---|
| türü | yok | Şu şekilde ayarlanmalıdır: webPubSub |
| yön | yok | Şu şekilde ayarlanmalıdır: out |
| ad | yok | Çıkış bağlama nesnesi için işlev kodunda kullanılan değişken adı. |
| göbek | Merkez | değeri, işlevin tetiklenebilmesi için Web PubSub hub'ının adına ayarlanmalıdır. özniteliğindeki değeri daha yüksek öncelik olarak ayarlamayı destekliyoruz veya uygulama ayarlarında genel değer olarak ayarlanabilir. |
| bağlantı | Bağlantı | Web PubSub Hizmeti bağlantı dizesi içeren uygulama ayarının adı (varsayılan olarak "WebPubSubConnectionString" olarak adlandırılır). |
Önemli
En iyi güvenlik için, işlev uygulamanız paylaşılan gizli anahtar içeren bir bağlantı dizesi kullanmak yerine Web PubSub hizmetine bağlanırken yönetilen kimlikleri kullanmalıdır. Daha fazla bilgi için bkz . Microsoft Entra Id kullanarak yönetilen kimlik isteğini yetkilendirme.
Sorun giderme
Konsol günlüğünü ayarlama
Ayrıca, hizmette yaptığınız istekleri daha ayrıntılı incelemek istiyorsanız konsol günlüğünü kolayca etkinleştirebilirsiniz.