You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure App Service的React应用中配置连接字符串?

问题

我已将React应用部署至Azure App Service,本地开发环境中,我在appsettings.Development.json里配置了如下内容:

"ConnectionStrings": {
     "setting": "<connectionstring_details>",
  },

该配置需要在Azure应用中设置。我已进入应用的「环境变量」→「连接字符串」中添加名为“setting”的配置并填入connectionstring_details值,但未生效。若让应用从appsettings.json(而非appsettings.Development.json,因为是发布模式)中读取值则可正常工作。我在代码中通过以下方式获取该值:

public HomeController(IConfiguration configuration)
{
    MyValue = configuration.GetConnectionString("setting");
}

请问该如何设置这个值?是否只需在环境变量而非连接字符串中配置?

解决方案
  • 问题根源:Azure App Service的「连接字符串」板块会根据你选择的类型(比如SQL Server、MySQL)自动给键名添加前缀,比如SQL Server类型会生成SQLCONNSTR_setting,这和代码中GetConnectionString("setting")要读取的键名不匹配,导致无法获取值。
  • 两种有效解决方式:
    1. 用应用程序设置配置:进入Azure App Service的「环境变量」→「应用程序设置」,添加新配置项,键名填ConnectionStrings:setting,值填入你的连接字符串内容。IConfiguration会自动识别这个层级结构,GetConnectionString("setting")就能正常读取。
    2. 选择自定义连接字符串类型:如果要继续用「连接字符串」板块配置,添加时将类型选择为自定义(Custom),Azure不会给键名添加前缀,GetConnectionString("setting")就能匹配到你设置的键名。

内容的提问来源于stack exchange,提问作者Clarisa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 23:27:01