簡體   English   中英

盡管在本地環境中具有相同的 launchSettings.json,但使用了不同的 URL

[英]Different URLs used despite having same launchSettings.json in local enironment

我有一個 API 網站。 這是我的launchSettings.json

{
  "$schema": "https://json.schemastore.org/launchsettings.json",
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:40682",
      "sslPort": 44360
    }
  },
  "profiles": {
    "TTRailtrax": {
      "commandName": "Project",
      "launchBrowser": true,
      "launchUrl": "swagger",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      },
      "applicationUrl": "https://localhost:7184;http://localhost:5184",
      "dotnetRunMessages": true
    },
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "launchUrl": "swagger",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  }
}

當我運行這個項目時,使用的 URL 是https://localhost:44360

但是當我在另一台計算機上檢查我的代碼並運行項目時, URL 是https://localhost:7184

我 URL 在所有計算機上都相同,因為此 API 是從解決方案中的另一個網站調用的。

我可以看到第二個 URL 來自TTRailtrax配置文件,但我真的不明白這些配置文件是什么,或者為什么不同的計算機似乎選擇不同的配置文件。 我已確認launchSettings.json已檢查到源代碼管理中,並且在兩台計算機上都是相同的。

更新

這是我到目前為止所學到的。 這兩個配置文件是默認創建的。 其中之一 ( TTRailtrax ) 將使用 Kestral 服務器。 另一個( IIS Express )將使用 IIS Express。 我不確定為什么有兩台服務器,或者在它們之間進行選擇時有哪些考慮因素。

Microsoft 的文檔顯示了一個下拉列表,您可以在其中 select 正在使用哪個配置文件。 我在我的系統 (Visual Studio 2022) 上的任何地方都找不到這個。

如果我 go 進入項目的設置並打開調試啟動配置文件 UI,我可以編輯應用程序 URL字段。 但是,應用 SSL URL字段被禁用。 (我正在使用 SSL。)

我還沒有弄清楚為什么我的一台計算機選擇了一個配置文件,而另一台計算機選擇了另一個配置文件。

IIS Express 配置文件適用於計划在 IIS 上托管其應用程序並希望盡可能接近本地模擬該環境的開發人員。 Kestrel 配置文件適用於那些不想要 IIS Express 配置文件的人 - 例如,因為他們不打算使用 IIS 進行托管,或者因為他們希望他們的調試體驗更快。

VS 會記住您上次用於啟動應用程序的配置文件,因此一台機器上的版本使用 Kestrel 配置文件這一事實表明您必須在之前的某個階段選擇了該配置文件。 也許這個選擇不是你的深思熟慮的選擇。

下拉菜單包含在“運行”按鈕中。 你有兩個綠色箭頭,一個是實心的,另一個是輪廓的。 所選啟動配置文件的名稱顯示在實心綠色箭頭旁邊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM