Azure Functions Error Value cannot be null. (Parameter 'provider')

在初次調試Azure Functions時,可能會遇到如下錯誤:

Value cannot be null. (Parameter 'provider')

或者 connect Econnrefused 127.0.0.1:9091

 

 

 

此問題初步判斷爲網絡異常導致了文件下載失敗,可以開啓更多調試日誌查看是否爲文件下載失敗導致的,可以打開更多日誌查看是否是文件下載故障:

步驟:

在VS Code中修改.vscode\launch.json和tasks.json文件中的啓動命令

在launch.json和tasks.json中的 host start 後增加 --verbose 參數:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Attach to Python Functions",
      "type": "python",
      "request": "attach",
      "port": 9091,
      "preLaunchTask": "func: host start --verbose"
    }
  ]
}

 

{
  "version": "2.0.0",
  "tasks": [
    {
      "type": "func",
      "command": "host start --verbose",
      "problemMatcher": "$func-python-watch",
      "isBackground": true
    }
  ]
}

 

 

開啓更多日誌之前:

開啓更多日誌之後,會顯示更多的日誌信息:

 

 

對於 Java、JavaScript、PowerShell、Python 和自定義處理程序函數應用,我們建議使用擴展捆綁來訪問綁定。此方案由vs code 自動根據host.json 中的 extensionBundle 中的內容自動下載擴展包。

 

如果下載失敗,就會報錯:Value cannot be null. (Parameter 'provider')

此時可以手動安裝擴展包,可以參照官網 https://docs.microsoft.com/zh-cn/azure/azure-functions/functions-bindings-register#extension-bundles 

進行處理,最簡單的方式是科學連接國外網絡,即可下載host.json 中的 extensionBundle 中的內容。

 

如果無法連接國外網絡,

則可以嘗試手動安裝所有擴展(根據經驗,此手動下載方案比使用 VS Code裏的host.json的extensionBundle 自動下載擴展包的源是不同的,手動做法可能更容易成功):

.Net Core CLI 執行:

func extensions install

或者手動安裝指定擴展包:

.Net Core CLI 執行:

func extensions install --package Microsoft.Azure.WebJobs.Extensions.Storage --version 4.0.2

 

 





聲明:

 

點擊可查閱本站文章目錄 《文章分類目錄》

本站所有內容僅代表個人觀點,如與官文檔衝突,請以官方文檔爲準。

可在本頁面下方留言或通過下方聯繫方式聯繫我:

微信:wxyusz;郵箱:[email protected]

歡迎關注公衆號“雲計算實戰”,接收最新文章推送。



知識共享許可協議

本作品由Sean Yu 採用知識共享署名-非商業性使用-相同方式共享 4.0 國際許可協議進行許可。
歡迎轉載、使用、重新發布,但務必保留文章鏈接:https://www.51azure.cloud,且不得用於商業目的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章