Python 3.x 如何使用python访问local.setting.json数据库连接字符串
我在本地Azure函数中有这个local.settings.json(Http触发) 我想访问变量“SQLConnectionString”并在Python3.6代码中使用。Python 3.x 如何使用python访问local.setting.json数据库连接字符串,python-3.x,azure-functions,Python 3.x,Azure Functions,我在本地Azure函数中有这个local.settings.json(Http触发) 我想访问变量“SQLConnectionString”并在Python3.6代码中使用。 我找到了许多使用C#访问此变量的指南,但我没有幸运地找到如何通过python访问此变量。您可以通过声明导入操作系统,然后使用 setting=os.environ[“设置名称”] 更多信息-您可以通过声明导入操作系统,然后使用 setting=os.environ[“设置名称”] 更多信息-我刚刚测试了它,遇到了相同的错误
我找到了许多使用C#访问此变量的指南,但我没有幸运地找到如何通过python访问此变量。您可以通过声明导入操作系统,然后使用
setting=os.environ[“设置名称”]
更多信息-您可以通过声明导入操作系统,然后使用
setting=os.environ[“设置名称”]
更多信息-我刚刚测试了它,遇到了相同的错误。您应该修改local.setting.json,如下所示:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "",
"FUNCTIONS_WORKER_RUNTIME": "python",
"SQLConnectionString": "cnx = mysql.connector.connect(user=\"test@hurytestmysqlserver\", password=\"Password123\", host=\"testmysqlserver.mysql.database.azure.com\", port=3306, database=\"xxx\", .....)"
}
}
但不是
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "",
"FUNCTIONS_WORKER_RUNTIME": "python"
},
"ConnectionStrings": {
"SQLConnectionString": "xxxxxxxx"
}
}
请试一试
作为补充(我想提供解决方案“os.environ[xxx]”,但看到了HariHaran提供的解决方案,哈哈~)我刚刚测试了它,遇到了同样的错误。您应该修改local.setting.json,如下所示:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "",
"FUNCTIONS_WORKER_RUNTIME": "python",
"SQLConnectionString": "cnx = mysql.connector.connect(user=\"test@hurytestmysqlserver\", password=\"Password123\", host=\"testmysqlserver.mysql.database.azure.com\", port=3306, database=\"xxx\", .....)"
}
}
但不是
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "",
"FUNCTIONS_WORKER_RUNTIME": "python"
},
"ConnectionStrings": {
"SQLConnectionString": "xxxxxxxx"
}
}
请试一试
作为补充(我想提供解决方案“os.environ[xxx]”,但看到了HariHaran提供的解决方案,哈哈~)在Python中,您需要执行以下操作:
导入操作系统
conn=os.environ[“ConnectionString:SQLConnectionString”]
在Python中,您需要执行以下操作:
导入操作系统
conn=os.environ[“ConnectionString:SQLConnectionString”]
您介意在连接操作中单独设置属性(例如用户名、密码、端口…)而不是连接字符串吗?连接字符串将隐藏在Azure key Vault中,并在将来通过Azure env变量访问。但出于测试和开发目的,我希望在local.settings.json中设置连接字符串。您介意在连接操作中单独设置属性(例如用户名、密码、端口…)而不是连接字符串吗?连接字符串将隐藏在Azure密钥库中,并在将来通过Azure env变量访问。但出于测试和开发目的,我希望在local.settings.json.tryed:import os…中有连接字符串。。。。打印(os.environ[“SQLConnectionString”])或打印(os.environ[“ConnectionString”]),结果相同:System.Private.CoreLib:Exception,同时执行function:Functions.HttpTrigger。System.Private.CoreLib:结果:失败异常:KeyError:'SQLConnectionString'已尝试:导入操作系统。。。。打印(os.environ[“SQLConnectionString”])或打印(os.environ[“ConnectionString”]),结果相同:System.Private.CoreLib:Exception,同时执行function:Functions.HttpTrigger。System.Private.CoreLib:Result:失败异常:KeyError:'SQLConnectionString'yup在没有嵌套的“ConnectionString”的情况下修改local.setting.json:{“SQLConnectionString”:“XXXXXXXXXXXX”}帮助。谢谢!是的,在没有嵌套的“ConnectionString”的情况下修改local.setting.json:{“SQLConnectionString”:“xxxxxxxx”}有帮助。谢谢!