Àwọn ìpè Graph API àti àwọn ìbéèrè token ClientSecretCredential ní àwọn ibi ìwọlé transport ọ̀tọ̀ọ̀tọ̀. Pẹ̀lú Microsoft.Graph 5 àti Azure.Identity, ṣètò àwọn méjèèjì kí o tó dá client náà:

var proxy = new System.Net.WebProxy(
    "http://proxy.example.net:8080");

var tokenHandler = new System.Net.Http.HttpClientHandler
{
    Proxy = proxy,
    UseProxy = true
};

var credentialOptions = new Azure.Identity.ClientSecretCredentialOptions
{
    Transport = new Azure.Core.Pipeline.HttpClientTransport(tokenHandler)
};

var credential = new Azure.Identity.ClientSecretCredential(
    tenantId, clientId, clientSecret, credentialOptions);

var authProvider =
    new Microsoft.Kiota.Authentication.Azure.AzureIdentityAuthenticationProvider(
        credential, scopes: new[] { "https://graph.microsoft.com/.default" });

var graphHttp = Microsoft.Graph.GraphClientFactory.Create(proxy: proxy);
var graphClient = new Microsoft.Graph.GraphServiceClient(
    graphHttp, authProvider);

Fún ọ̀nà HTTP gbogbo ènìyàn tí kò nílò ìjẹ́rìí, àkọsílẹ̀ proxy HTTP pèsè àwọn àdírẹ́sì tó yẹ fún WebProxy tí a pín. Ètò náà ń pèsè tenantId, clientId àti clientSecret nípasẹ̀ ìṣàkóso ẹ̀rí tó wà tẹ́lẹ̀. .default scope ń lo àwọn ìyọ̀nda ètò tí a ṣètò fún ìforúkọsílẹ̀ yẹn; ọ̀nà kò lè fúnni ní ìyọ̀nda.

Ka àwọn ìlà transport méjì náà gẹ́gẹ́ bí orísìí pàtàkì. HttpClientTransport(tokenHandler) ń gbé ìbéèrè token ẹ̀rí náà. GraphClientFactory.Create(proxy: proxy) ń pa ìkọ́ HTTP middleware Graph SDK mọ́ nígbà tí ó ń ṣètò ọ̀nà API rẹ̀.

Tí alárinà bá nílò ìjẹ́rìí, yan àkọọ́lẹ̀ tó yẹ fún Credentials ohun proxy náà. Pa àwọn transport tí o ní mọ́ fún gbogbo ìgbésí ayé ẹ̀yà náà kí o sì sọnù wọ́n nígbà ìdádúró.

Lo àpẹẹrẹ yìí pẹ̀lú ìran SDK tí a mẹ́nuba. Àwọn àpẹẹrẹ HttpProvider àti DelegateAuthenticationProvider jẹ́ ti ìran tẹ́lẹ̀, a kò sì lè dà wọ́n pọ̀ mọ́ ẹ̀wọ̀n constructor yìí.

Àwọn àpilẹ̀kọ tó jọra