Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 522|Отговор: 0

[Източник] ASP.NET Core (31) за събиране на gRPC метаданни

[Копирай линк]
Публикувано на 2025-8-17 17:42:11 | | | |
Изисквания: При използване на клиента за предаване на метаданни, как ASP.NET Core сървърът трябва да ги получи?

Преглед на метаданните

Метаданните са канал за заобикаляне, който позволява информацията, свързана с RPC, да се предава между клиента и сървъра.

gRPC метаданните са ключово-стойностни двойки, изпратени с първоначалната или последната заявка или отговор на gRPC. Използва се за предоставяне на допълнителна информация за обаждането, като идентификационни данни за автентикация, информация за проследяване или персонализирани заглавия.

gRPC метаданните се реализират чрез HTTP/2 заглавия. Ключът е ASCII низ, а стойността може да бъде както ASCII низ, така и двоични данни. Клавишите не са чувствителни към регистри и не могат да започват с префикса grpc-, който е запазен от самия gRPC.

gRPC метаданните могат да бъдат изпращани и получавани както от клиента, така и от сървъра. Заглавието се изпраща преди първоначалните данни за заявка да бъдат изпратени от клиента към сървъра, и по същия начин преди първоначалните данни за отговор да бъдат изпратени от сървъра към клиента. Опашката се изпраща, когато сървърът изключи RPC.

Метаданните gRPC служат за различни цели, като:

Автентикация: gRPC метаданните могат да се използват за изпращане на удостоверителни данни към сървъра. Това може да се използва за реализиране на различни схеми за удостоверяване като OAuth2 или JWT чрез стандартни HTTP авторизационни заглавия.
Проследяване: gRPC метаданните могат да се използват за изпращане на проследяваща информация към сървъра. Това може да се използва за проследяване на напредъка на заявките в разпределена система.
Персонализирани заглавия: gRPC метаданните могат да се използват за изпращане на персонализирани заглавия към или от сървър към клиент. Това може да се използва за реализиране на специфични за приложението функции като балансиране на натоварването, ограничаване на скоростта или предоставяне на подробна информация за грешки от сървъра към клиента.
Вътрешна употреба: gRPC използва HTTP/2 заглавия и опашки, които ще бъдат интегрирани с метаданните, зададени от вашето приложение.

Тест

Създайте нов middleware pipeline от страна на сървъра, за да получите заглавието на заявката, и кодът е следният:



Опитайте да направите заявка чрез Postman, както е показано по-долу:



Можете да видите, че стойността на метаданните чрез Postman може да се получава нормално от страна на сървъра.

Използвайте C# конзолата, за да настроите метаданни за изпращане на заявки, кодът е следният:
Както е показано по-долу:



Задаването на стойността на метаданните чрез C# код може да се получи и от страна на сървъра. Ако използвате gRPC client factory за глобално добавяне, кодът е следният:

Препратка:

Входът към хиперлинк е видим.
Входът към хиперлинк е видим.




Предишен:Използвайте Postman за тестване (отстраняване на грешки) на услугата gRPC
Следващ:Блокчейн консенсусен механизъм: PoW, PoS, DPoS
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com