System.Private.Uri : Azure 함수에서 값은 null 오류 일 수 없습니다.

Aug 21 2020

Visual Studio Code에서 C # Azure 함수를 만들었습니다. Visual Studio Code에서 함수를 실행할 때 다음 오류가 발생합니다.

[8/21/2020 1:27:34 AM] A host error has occurred during startup operation '803d7235-e81a-4768-a68d-15fcd93d8518'.
[8/21/2020 1:27:34 AM] System.Private.Uri: Value cannot be null. (Parameter 'uriString').
[8/21/2020 1:27:34 AM] Stopping JobHost
Value cannot be null. (Parameter 'provider')

어떻게 고칠 수 있습니까?

답변

1 JayaChatterjee-MSFT Aug 26 2020 at 13:23

확인할 수있는 몇 가지 사항이 있습니다.

  1. 연결 끝점을 사용하고 appsettings에서 값을 읽는 경우. 그렇다면 해당 설정의 값을 확인하십시오.
  2. 이 경우 유효한 서비스 버스 연결 끝점을 사용하고 있는지 확인하십시오. (있는 경우)

자세한 내용을 제공하지 않으므로 문제 설명에 대한 매우 일반적인 설명입니다. 함수의 경우 Azure Key Vault에서 연결 문자열 값을 읽고 Azure 함수 구성의 앱 설정에서이 값을 설정하지 못한 경우이 오류가 여러 번 표시됩니다. 이 시나리오에서는 Azure Function 애플리케이션이 Key Vault에서 값을 읽을 수 있도록 Key Vault 구성에서 만든 액세스 정책입니다. 따라서 키의 앱 설정 값에 유효한 값이 있는지 확인하려면 액세스 정책을 다시 확인해야합니다.

1 Liam Oct 22 2020 at 17:34

이는 azure 서비스가 a Uri를 사용하여 다른 서비스에 연결할 수없는 경우이 오류 가 표시되는 일반적인 문제로 보입니다. 호출하기 전에 문제가 발생하면 Startup.cs. 따라서 모든 Uri호출에 올바른 URL / 연결 문자열이 있는지 확인하십시오 .

나에게 문제는 내 시작에서 다음 줄이었습니다.

builder.AddSecretClient(new Uri(Environment.GetEnvironmentVariable("KeyVaultUrl")));

해당 환경 변수는 null입니다.

1 PeterMorris Oct 28 2020 at 17:30

나를 위해 문제는 내가에 잘못된 연결 문자열 값을 붙여 넣기 한 것을 local.settings.json- 대신 "EndPoint=...내가 가진"\"Endpoint=...