1 回答

TA貢獻1780條經驗 獲得超5個贊
另一種情況與 CORS 和測試有關。您可以克隆此存儲庫并在您要查找詳細信息時深入搜索“MS_HttpContext”事件。但是,我不確定它的文檔。
定義此鍵的位置,或類似的鍵,例如 HTTP_X_FORWARDED_FOR、REMOTE_ADDR 等。
所有這些字典鍵從哪里來?
這些請求的屬性(又名服務器變量)是根據客戶端發送的相應標頭創建的(幾乎是重復的)(適用于 HttpContext - ASP.NET WebForms/MVC)
順便說一句,ASP.NET Core 的 HttpRequest 中不再有此類屬性(僅限標頭)。
如果您需要在 ApiController 內檢索它,可能會更容易(不要忘記所需的空引用檢查和自托管 WebAPI 解決方案):
public class YourApiController : ApiController {
? ? public HttpResponseMessage YourActionName() {
? ? ? ? var request = new HttpContextWrapper(CurrentContext).Request;
? ? ? ? ...
? ? }
}
public class YourAuditHandler : DelegatingHandler {
? ? protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) {
? ? ? ? string ipAddress = HttpContext.Current != null ? HttpContext.Current.Request.UserHostAddress : "0.0.0.0";
? ? ? ? ...
? ? }
}
- 1 回答
- 0 關注
- 115 瀏覽
添加回答
舉報