Tworzenie tematu

Ważne

Ten interfejs API jest przestarzały i wycofany od 11.1.2021 r. i nie powinien już być używany.

Tworzy nowy temat. Po utworzeniu manifest zasobu tego tematu jest niezmienny. Ta operacja jest idempotentna. Powtarzanie wywołania tworzenia po pomyślnym utworzeniu kolejki o tej samej nazwie powoduje wyświetlenie komunikatu o błędzie "Konflikt 409".

Pamiętaj o następujących kwestiach:

  • Temat nie jest natychmiast usuwany. Jest on oznaczony do usunięcia, a agent zarządzania zasobami pobiera to żądanie usunięcia w ciągu 5 minut. Jednak interfejs użytkownika powinien odzwierciedlać tę operację natychmiast zgodnie z odebrany kod HTTP.

  • Nazwa tematu jest w rzeczywistości ścieżką identyfikatora URI. Następujące wyrażenie regularne weryfikuje każdy segment w ścieżce identyfikatora URI po usunięciu możliwego kodowania %.

  • Nazwa tematu powinna być zgodna z następującym wyrażeniem regularnym.

    public static readonly Regex SafeMessagingEntityNameExpression = new Regex(@"^[\w-\.\$]*/?$", RegexOptions.Compiled | RegexOptions.ECMAScript);

    Oznacza to, że:

    • Segmenty jednostek mogą zawierać tylko litery, cyfry, kropki (.), łączniki (-) i podkreślenia (_).

    • Dozwolone są wiele segmentów (na przykład jeśli nazwa kolejki = "a/b/c", zawiera trzy segmenty).

    • Ukośnik (/) nie jest dozwolony jako prefiks lub sufiks nazwy kolejki.

    • Maksymalna liczba znaków to 50.

Żądanie

Metoda Identyfikator URI żądania Wersja PROTOKOŁU HTTP
PUT https://management.core.windows.net/{subscription ID}/services/ServiceBus/Namespaces/{Namespace}/Topics/{Topic Path} HTTP/1.1

Nagłówki żądań

W poniższej tabeli opisano wymagane i opcjonalne nagłówki żądań.

Nagłówek żądania Opis
Content-Type application/xml;type=entry;charset=utf-8
x-ms-version 2012-03-01

Należy pamiętać, że żądanie wymaga również certyfikatu klienta. Ten certyfikat musi być zgodny z certyfikatem przekazanym dla tej konkretnej subskrypcji.

Treść żądania

W poniższej tabeli opisano kluczowe elementy treści żądania:

Nazwa właściwości Typ Wymagane Opis
MaxTopicSizeInMegaBytes Liczba całkowita bez znaku Wymagane. Ten parametr określa maksymalny rozmiar tematu w megabajtach. Każda próba ściągnięcia komunikatu powodującego przekroczenie tej wartości przez temat zakończy się niepowodzeniem. Tylko zawartość użytkownika jest liczone do tej wartości. Tabela ustawiana w czasie tworzenia tematu i w czasie wykonywania:

- Zakres: 1–5*1024.

- Wartość domyślna: 1*1024.
TopicSizeinBytes Liczba całkowita bez znaku Tylko do odczytu. Nie jest wymagane w czasie tworzenia. Ten parametr odzwierciedla rzeczywistą liczbę bajtów, które komunikaty w temacie zajmują obecnie względem limitu przydziału tematu.

Zakres: 0 – MaxTopicSizeinMegaBytes
DefaultMessageTimeToLive Data/godzina XML Opcjonalny. W zależności od tego, czy włączono obsługę utraconych komunikatów, jeśli komunikat został zapisany w temacie przez więcej niż określony czas, zostanie on automatycznie przeniesiony do kolejki utraconych komunikatów lub usunięty. Ta wartość jest zastępowana przez czas wygaśnięcia określony w komunikacie, jeśli czas wygaśnięcia komunikatu jest mniejszy niż czas wygaśnięcia ustawiony w temacie. Ta wartość jest niezmienna po utworzeniu tematu:

- Zakres: 1 sekunda – 14 dni.

— Ustawienie domyślne: 14 dni.
RequiresDuplicateDetection Wartość logiczna Opcjonalny. Ustaw tabelę tylko w czasie tworzenia tematu.

- Wartość domyślna dla trwałego tematu: Fałsz.
EnableDeadLetteringOnMessageExpiration Wartość logiczna Opcjonalny. Ustaw tabelę tylko w czasie tworzenia tematu.

- Wartość domyślna: Fałsz.

To pole określa, jak Service Bus obsługuje komunikat z wygasłym czasem wygaśnięcia. Jeśli jest włączona i komunikat wygaśnie, Service Bus przenosi wiadomość z tematu do kolejki utraconych komunikatów dla tego tematu. Jeśli ta wiadomość jest wyłączona, zostanie trwale usunięta z tematu.
DuplicateDetectionHistoryTimeWindow Przedział czasu Opcjonalny. Właściwość określająca przedział czasu, w którym Service Bus wykrywa duplikowanie komunikatów.

- Zakres: 1 sekunda – 7 dni.

— Ustawienie domyślne: 10 minut.
Liczbapodsubskrypcji Liczba całkowita Tylko do odczytu. Nie jest wymagane w czasie tworzenia. Liczba subskrypcji tematów.
Stan Ciąg Tylko do odczytu. Jedna z następujących wartości:

- Tworzenie: w fazie tworzenia.
- Aktywne: domyślnie po utworzeniu lub gdy użytkownik aktywuje go po ostatnim zawieszeniu.
- Zawieszone: gdy użytkownik aktualizuje jednostkę do zawieszenia.

Reakcja

Odpowiedź zawiera kod stanu HTTP i zestaw nagłówków odpowiedzi.

Kody odpowiedzi

Uwaga

Jeśli utworzysz temat o nazwie zawierającej znaki specjalne lub zakodowane (na przykład test?Name=value&, który jest zakodowany w test%3FName%3Dvalue%26metodzie ), generowany jest wyjątek (401) Brak autoryzacji.

Kod Opis
201 Pomyślnie utworzono temat.
400 Nieprawidłowa treść żądania.
401 Niepowodzenie autoryzacji.
403 Przekroczono limit przydziału; kolejka nie została zaktualizowana.
500 Błąd wewnętrzny.

Aby uzyskać informacje o kodach stanu, zobacz Status and Error Codes (Kody stanu i błędów).

Nagłówki odpowiedzi

Nagłówek odpowiedzi Opis
Content-Type application/xml;type=entry;charset=utf-8

Treść odpowiedzi

Zwracany jest opis tematu, ponieważ jeśli w żądaniu PUT brakuje niektórych właściwości opisu, mogą one zawierać wartości domyślne.